学DirectX吧,opengl的资源大部分都更新比较快,所有书本老早就过时了。而且文档一点都不规范,学起来根本毫无重点,虽然它能跨平台,渲染速度有比DirectX快一点。但是入手特别慢,特别是在国内。
复杂的模型就是通过maya或者3DMAX这样的软件做好了之后,在opengl或者DirectX中用程序读入,然后用opengl或者DirectX的绘制方式显示出来就行了。你如果只知道glBegin什么的就不用绘制了,这都是书上的函数,1千个面不到就会卡。高级的东西在网络上,也得自己找资料。
我没学过DirectX,我做了三年的opengl。但是感觉DirectX的文档比opengl的规范很多,而且微软提供很多例子,专门为游戏做的。
opengl兼顾的使命太多,所以文档很乱。你甚至都不能从官方直接获取最新的SDK,官方的解释说:oh~不好意思,我们只开发核心库,至于完整的opengl你可以从别的开源项目中获取,你如果没有自己找过opengl库,你用的只不过是微软上自带的opengl1.1的版本(那时候微软也参与了opengl项目。),但自从它搞了DirectX就退出opengl了。
对于opengl来说,读入的方式就是你自己去找各种模型的二进制文件格式,然后用C或者C++读二进制文件的方式读入。很简单的,最后你获得的数据都是顶点啊、法线啊、纹理坐标啊、还有如何把顶点连接成面的信息,模型的材质文件是渲染模型获得真实感的关键。
有一种模型文件不是二进制的,就是obj格式文件,你可以用文本文档打开看,你就知道里面写的些啥了,只不过是一些你不愿意在程序里面做的一些繁琐的数据。入门级别就先拿obj格式练练手吧。
是OpenGL和D3D 。3Dmax是建模软件。。
小游戏直接用代码写就可以了,至于你说的大游戏,那必须先写 人物编辑器、地形编辑器。,,
那些游戏里的场景看上去很大很复杂,本质还是用基本图元实现的。
你可以下个虚幻3引擎看下,免费的。。。
那些模型通常是通过 3DMax 或 Maya 之类的软件设计出来的,然后安装写组件导出你要的模型文件格式在程序里调用。
同问!
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字
上传中....