gamemaker 8 3D:将外部3D模型转换为GM3D模型

分类栏目:gamemaker教程

560

半个月前,HB恢复了,于是我发表了一贴,加了张图上首页
结果过了半个月,这贴还在首页,感觉有点心虚,赶紧新恢复一个旧贴把新帖顶下去
在9月19日到10月2日之间,HB经历了一次服务器崩溃期,在两个星期内无法访问,但我也不能说这算是一次大的崩溃
毕竟站长维护网站也辛苦,以后会出现什么意料之外的问题,谁也不知道
在这次恢复后,一些帖子丢失了,我的帖子也丢失了几个,不过我的帖子其实是在本地硬盘上有备份的
(准确的说是我先在本地写好,然后粘贴上来,只是本地的源文件还在)
所以我其实是可以恢复自己帖子的,只不过我是用记事本保存内容,因此没有文字格式和排版,发上来还得手动排版
-----以下为原帖内容-----
使用GM制作3D,一直以来的难点在于“没有华丽的3D模型”,GM8本身的建模函数d3d_model_primitive只能用代码来描述模型,想想用代码来建模的艰难……就会如此的去追求可视化界面。所以,使用拥有图形化界面的3D建模软件来制作模型,才能提高效率
但是,不同的建模软件保存的3D模型文件格式迥异,要如何为GM所用?在这里,就必须得提到一个3D业界著名的文件格式:OBJ格式,即扩展名(后缀名)为*.obj的文件。但是,恰好在编程中也有一个扩展名(后缀名)为*.obj的文件格式,是编译程序的目标文件,这个也是挺巧合的(你们撞后缀名啦!)
OBJ模型是由Wavefront公司推出的一种使用文本格式来保存3D模型数据的文件,因为采用文本方式保存,文件数据易于理解,因此得到了大部分3D软件的支持。所以在不同的3D软件之间传递模型时,会选择通用性很高的OBJ格式
在GM贴吧发现了一个物理学插件,某天,我去那个插件的作者的网站上乱转,发现他还做了一个GM建模工具:
Model Creator
gamemaker 8 3D:将外部3D模型转换为GM3D模型
Model Creator官网:点此进入
下载:官网下载
这个工具也支持OBJ模型,这意味着可以通过它将OBJ模型格式转换到GM的模型格式
接下来,就是使用这个工具将一个OBJ模型转换为GM模型的方法:
首先,要有一个OBJ模型
gamemaker 8 3D:将外部3D模型转换为GM3D模型
点此获取模型(百度网盘)
(模型作者未知)
然后,打开Model Creator,首次启动应该会弹出一个提示,忘了是啥了(因为我再次启动时不弹提示了)反正随便选一个,然后进入它的界面
进入界面后,点击界面右下角的“Load a model file”(载入一个模型文件)按钮
gamemaker 8 3D:将外部3D模型转换为GM3D模型
在弹出的窗口中,就可以在文件类型里找到OBJ模型了
gamemaker 8 3D:将外部3D模型转换为GM3D模型
载入模型后,点击右下角的“Save current model in a different file”(模型另存为)按钮
gamemaker 8 3D:将外部3D模型转换为GM3D模型
就可以保存为GM模型了
这个工具会为保存的GM模型加一个扩展名叫做*.gmmod,如果不喜欢这个后缀名,可以随便改一个,反正是文本文件
此时,就可以使用GM8的d3d_model_load函数来载入这个保存的模型了。不过,在GM中要看到3D模型,还要建立一个3D摄像机,这里提供一个创建好可控制摄像机的案例:

gamemaker 8 3D:将外部3D模型转换为GM3D模型

点此下载案例(百度网盘)
注:此案例包含中文注释,使用汉化版GM8打开可避免乱码
其实这个工具不仅能用来转换模型,也能直接进行建模,但是对比专门的3D软件,这个工具确实比较简陋了