Direct3d
D3D(Direct3D ):是微软为提高3D 游戏在Windows中的显示性能而开发的显示程序接口,目前已经升级到11.0版本,它提供了丰富的3D功能库,是游戏广泛采用的标准。
而操作系统和应用软件通常不能直接去使用显卡和其中的3D加速功能,必须通过系统中的一个接口去调用,这就是OPENGL和D3D的作用了。
OPENGL和D3D本质虽然一样,但却是不同的两个标准。 OpenGL是有着丰富经验的一个性能卓越的三维图形标准,它是在SGI等多家世界闻名的计算机公司的倡导下,以SGI的GL三维图形库为基础制定的一个通用共享的开放式三维图形标准。目前,包括Microsoft、SGI、IBM、DEC、SUN、HP等大公司都采用了OpenGL做为三维图形标准,许多软件厂商也纷纷以OpenGL为基础开发出自己的产品,其中比较著名的产品包括动画制作软件Soft Image和3D Studio MAX、仿真软件Open Inventor、VR软件World Tool Kit、CAM软件ProEngineer、GIS软ARC/INFO等等。 为DX10和Windows Vista提供的显示硬件必须满足DX10的所有硬件特性。这样对于开发者就比较可以放心的使用各种硬件特性了,很类似Console平台的开发。
OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。
OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以与Visual C++紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。
推荐:openGL,游戏效果更好
现在的游戏普遍采用directx,一方面原因是它的版本和功能更新的非常快,这一点opengl稍慢些,另一方面,directx不仅包括图像接口,还包括其它如输入设备声音网络视频等等接口,它包含了一整套多媒体功能,更容易被开发者采用。
opengl仅仅是个图形图像接口,基本不包括其它多媒体功能。它的优势是平台无关性。directx则是基于windows的,估计不能在mac和linuxsolars上使用。
另一方面,opengl在精确绘制图形上更具优势,大型3d建模软件基本上采用opengl绘制,而不是d3d。
以opengl为基础的3d游戏相比d3d的来说数量并不多,但也有重量级作品,idsoftware的doom3及其开发的新一代游戏引擎在图像方面都使用opengl。
游戏引擎对运行速度要求很高,所以在c++学习上应侧重高效算法和代码优化。看看quake3的源代码,你会发现,在很重要的运算上,它针对不同平台,不同cpu,进行了汇编指令级别的优化,很多除法,开平方的运算使用的算法比普通运算快几十倍,这也是保证游戏高速运行的基础吧。
Photoshop|
Dreamweaver|
SVG|
WebGL|
Visual Studio|
PowerDesigner|
Eclipse|
Git|
Apache Ant|
Atom|
Composer|
CodeSmith|
Flex|
Gradle|
Maven|
Sublime Text3|
SVN|
Tableau|
Vim|
Chrome开发者工具|
OpenGL|
Unity|
Direct3D|
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....