渲染器的选择(GDI+, Opengl,unity3d, unreal)

最近在做增强现实的项目,在识别出物体特征点后,叠加三维指示图形,需要用到后期渲染。

经过初步筛选,待选的方案有四种,

1,直接使用GDI+ 的方法,利用矩阵运算,透视投影,再做Rasterization,利用GDI的方法绘制到窗口上,所有的东西都要自己来实现。

2,采用OpenGL, 利用跨平台的opengl api绘制三维图形。

3,采用Unity3d或unreal引擎。

4、其他引擎。


      从开发的难易程度上看,直接采用Unit3d或unreal等这些引擎会更方便一些,操作容易上手,资源也很多, 但要学精用透,还是需要跨过很多坑。在扩展开发的角度上看,

其中unity3d需要采用c# 开发,并只能支持到NET2.0,这样限制了很多C#扩展功能的实现;unreal虽然能用C /C++开发,而且也能看到源码,但要弄透彻难度非常大,并且开发特

性也要照通常的C/C++开发差很多。

      其他大部分开源的第三方引擎,要不就是开源的不彻底,要就是封装结构太复杂很难使用;

      直接采用GDI的方式,要做矩阵投影计算、光栅化等,效率很低。

      最后决定采用OpenGL+c/c++的开发方式来实现三维图形的叠加渲染。

      通过一系列的评估,最后采用opengles的API集, 采用OpenGL ES 2.0 Emulator v1.4模拟器在windows7上进行模拟开发,同步在ANDROID的上实现程序。



你可能感兴趣的:(OpenGL,3d)