文明6mod制作(7):用Blender制作游戏3D模型
前言
模型制作
开始做模型,用到的是Blender,可以去steam上下载,详情参考Blender教程,接下来是基础教程
打开先把场景中的内容删掉,按A全选,按X删除
然后修改单位,在右下角属性面板中选择场景选项卡,在单位(Units)折叠框中设置单位系统(Unit System)为公制(Metric),单位缩放(Unit Scale)为0.01
然后把鼠标移到3D显示窗口,按N显示侧边栏,点击视图(View)选项卡,把视图截取终点(Clip End)设为100米,在这样的缩放之下游戏中一个六边形格子的宽度大约是6米,而此时Blender场景中 一个方格的宽度是1米
创建一个正方体
注意游戏中陆地比水平面稍微高一点,所以生成模型时应该先按G,再按Z沿着数轴向上移动,使其大部分位于水平面以上,此时右上角黄色倒三角就是此时的模型,先改一下名字
注意:游戏模型所有的面必须是三角形(这里的面指的是“三点共面”的面,不是正六面体的面,不过这并不重要),所以现在将其三角化
第一步 在物体模式(Object Mode)下左键选中立方体,在右下角面板选择修改器(Modifier),点击添加修改器(Add Modifier),点击三角化(Triangulate),再点击应用(Apply),然后按TAB,左上角进入编辑模式就可以看到效果
第二步 UV展开,在编辑模式下按A全选所有顶点,然后按U选择展开(Unwrap),要看效果就点最上面的UV Editing选项卡
第三步 设置材质,回到刚才的窗口,在右下角选择材质(Material)选项卡,点New添加材质
第四步 绑定骨骼,在物体模式下按Shift+A点击Armature,把大小(Radius)设为0.5m,在3D预览界面右上角选择线框视图
然后选择方块,再长按Shift点击这根骨头,松开shift点击Ctrl+P选择Armature Deform,这时方块就进入了Amature,效果达到了,最后导出模型,左上角File——Export——导出为FBX格式
改良设施
参照之前的做到这一步
打开AssetEditor,新建ArtDef文件,模板选择Landmarks,Landmarks里面新建地标元素,起个变量名,下面的Eras也新建元素,保存文件到当前工程的Artdefs文件夹下面,文件名为Landmarks.artdef
再新建一个artdef文件,模板选择Improvements,在Improvement下面新建元素,名称改为改良设施名称。下面的Landmark也新建元素,外部引用(Xref)这选择刚才那个文件的地标的变量名,保存为Improvements.artdef(若Xref没有刚刚的变量名,重启就可以选了)
现在把自己的模型放进来,点到Landmarks.artdef文件,找到地标文件默认的模型,在下拉菜单中点击那个小箭头
要导入刚才做完的模型,还需要两个文件,一个ast文件和一个geo文件,关系如下:
在AssetEditor左上角选择File——New——Geometry
这些空的填法可以参考官方,左上角File选择Open Entity,左边选择Geometry,改良设施的模型一般以IMP开头,找一些比较眼熟的
可以看到名字比较随意(大概率是变量名),类名是LandmarkModel,
后面Source File Path选择我们的模型(就是模型制作中保存的fbx文件)
Source Object 选择刚才在Blender里面改的名字,点击保存
接下来创建Asset文件,点击新建,选择Asset,不会写还是可以参考原文件,类名是TileBase
点击下面的Geometry选项卡,再点击添加已存在(Add Existing),旁边把除了自己项目以外的√都去掉,就能看到自己的几何文件
下面是不同状态下的不同贴图,先不考虑贴图,现在用xlp文件把它导入到工程中
左上角新建 选择xlp,PackageName填landmarks/tilebases,XLP Class选Tile Base
然后点添加,选择我们的AST文件
保存到当前工程的XLPs目录下,文件名为tilebases.xlp
回到landmarks.artdef文件,在Asset这里选择浏览(Browse)
如果刚才没有取名的话就不会出现在这
(记得重新生成Mod.Art.xml文件)
最后是加载过程,一个是加载模型,另一个是加载数据库,如下:
最后重构即可
(值得注意的是,文明6的模型使用基于物理规则的渲染(PBR))
添加新贴图办法:
输入材质文件的名称,在BaseColor右边点击第一个按钮,选择贴图,最后保存即可
编写人物、资源、区域的模型亦如此