使用OpenGL读取3DS文件的示例代码。
演示说明了3DS文件的结构、三维控件中视线、旋转设置,以及简单的动画。
重要说明如下
------------------全局变量-------------
g_Load3ds 读入数据的类
g_3DModel 数据本身
g_RotationSpeed 旋转速度
---------------------函数---------------
【WinMain】
入口函数。
调用Init初始化OpenGL
调用MainLoop显示
【Init】
初始化OpenGL,读取数据
调用InitialOpenGL初始化
调用CLoad3DS的Import3DS函数,从文件中读取g_3DModel
调用CreateTexture,装入纹理
【MainLoop】
循环调用RenderScence渲染场景,直到窗口关闭时退出
删除场景中对象
效用DeInit恢复初始化之前的状态
【RenderScence】
渲染
gluLookAt,选择视角
glRotatef,旋转
---------------------------------------
根目录下FACE.3DS为三维数据,FACE.BMP为其所指的贴图数据。
如果想读取其他文件,在代码中替换#define FILE_NAME "face.3ds"为其他3DS格式文件名即可。
如果读取结果是黑屏,往往是视角和视场设置错误,可以查看三维数据的位置,更改gluLookAt和gluPerspective。
1