原创作者:黑白日记
http://artoolkit.net/viewthread.php?tid=3598&extra=page=1&filter=type&typeid=2
请尊重我的劳动,码字真的很消耗时间和精力
这次来说说如何只用自己的MQO模型文件
以下内容需要积分高于 10 才可浏览
MQO文件格式简单,编辑软件水杉有汉化版本,而且GL对它有支持库,更加让人振奋的是MQO可以实现动画~
好了,来看看在程序上怎么去写。
你需要看了我的第一篇文章,因为这篇文章是建立在第一篇文章的框架之上的。
假定你已经了解(1)的内容了,现在我们开始吧~
首先,我们需要增加两个MQO文件的头文件:
#include <GL/GLMetaseq.h>
//MQO模型渲染依赖头文件
#include <GL/GLLight.h> //MQO模型渲染光照文件
然后增加一个全局变量:
MQO_MODEL mqoObject; //定义MQO模型数据为MQO_MODEL类
这句写在 double patt_trans[3][4]; 后面 就可以了。
如果是多个MQO模型,可以用 mqoObject1,mqoObject2,mqoObjectn……的形式来定义模型。
全局部分只有这些,接下来我们来看初始化部分如何修改
找到static void init( void ) ,在argInit() 后面写入:
mqoInit();
printf("loading mode/n");
mqoObject1 = mqoCreateModel("Data/mod.mqo",1); //比例倍数为1倍视频比例
//这里 "Data/mod.mqo"指定了mqo模型的路径和文件名,可以用绝对路径,也可以用相对路径
这里需要注意,模型读取必须在mqoInit()之后进行。
最后,替换draw() 中的glutSolidCube(50.0); 语句为:
//这里将原来的绘制BOX替换成了绘制MQO模型
mqoCallModel(mqoObject);
就这么简单,之后就可以编译运行了~当然MQO模型自己去找吧~网上有很多
因为在工作时写的这些,没有调试原代码,如果出现错误还请联系我~谢谢~
EMAIL:riji@qq.com
#include <GL/GLLight.h> //MQO模型渲染光照文件
然后增加一个全局变量:
MQO_MODEL mqoObject; //定义MQO模型数据为MQO_MODEL类
这句写在 double patt_trans[3][4]; 后面 就可以了。
如果是多个MQO模型,可以用 mqoObject1,mqoObject2,mqoObjectn……的形式来定义模型。
全局部分只有这些,接下来我们来看初始化部分如何修改
找到static void init( void ) ,在argInit() 后面写入:
mqoInit();
printf("loading mode/n");
mqoObject1 = mqoCreateModel("Data/mod.mqo",1); //比例倍数为1倍视频比例
//这里 "Data/mod.mqo"指定了mqo模型的路径和文件名,可以用绝对路径,也可以用相对路径
这里需要注意,模型读取必须在mqoInit()之后进行。
最后,替换draw() 中的glutSolidCube(50.0); 语句为:
//这里将原来的绘制BOX替换成了绘制MQO模型
mqoCallModel(mqoObject);
就这么简单,之后就可以编译运行了~当然MQO模型自己去找吧~网上有很多
因为在工作时写的这些,没有调试原代码,如果出现错误还请联系我~谢谢~
EMAIL:riji@qq.com