Lurker的UDK实例教学——赛车篇由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“道德与法治的教学实例”。
UDKCN实例教学系列
二〇一一年四月
Lurker的UDK实例教学——赛车篇
一、明确游戏制作思路(暂缺)UDKCN实例教学系列
二〇一一年四月
二、场景模型准备及导入
打开场景素材文件,规范模型名称、材质名称。UDKCN实例教学系列
二〇一一年四月
将模型和材质名称一一对应,方便识别,切记不可有空格。需要在udk内部加工的材质,建议将模型单独分离开(如果是面积很小的可以通过遮罩贴图的方式制作),例如需要实时反射的玻璃材质。
将所有模型的光滑组设置为自动。
为了在导入udk后产生较好的光影效果,我们将所有模型添加第二套UV,选中模型后,添加UnwrapUVW修改器,修改贴图通道为2,将uv展平,注意uv不应有任何重叠。UDKCN实例教学系列
二〇一一年四月
添加完uv后,我们再来添加碰撞模型。由于是赛车游戏,碰撞主要位于赛道地面以及赛道围墙。
我们先建立围墙碰撞模型,我们将所有赛道模型复制一份出来,附加成一个模型(赛道模型2),然后选中所有外轮廓的边,向内挤出少许,进入面级别,将挤出的面分离出来。将不需要的面删除,将分离出的面再次向上挤出。UDKCN实例教学系列
二〇一一年四月
这样就制作出了赛道外环的碰撞模型,依法炮制,制作出内环碰撞模型,最终结果如下:
将之前复制的赛道模型2删除,将碰撞模型附加到一起。下面开始,有两种做碰撞的思路,供大家选择,我跟人倾向于第二种。这里我要特别感谢上海Epic总部的Charles老师给予的相关指导。
(1)利用随模型一同导入udk的碰撞模型 UDKCN实例教学系列
二〇一一年四月
由于赛道地面模型需要在udk里单独使用碰撞,因此需要将我们制作好的碰撞模型作为其他模型的碰撞信息导入引擎,在这里,我用场景中最显著的主建筑:Mainbuilding作为碰撞模型的关联对象,将碰撞模型名称改为“UCX_MainBuilding_Collision”
接下来,我们需要将碰撞模型进行拆分,将内外赛道碰撞模型分别尽可能拆成一段一段大致为矩形的模型,分离时名称都改成“UCX_MainBuilding_Collision”。尽可能使每一段碰撞模型的外轮廓为一个矩形,(颜色是人为添加的,以示区别)。UDKCN实例教学系列
二〇一一年四月
对于这种方式,在max里的准备工作已经完毕。
(2)运用udk自定义BSP方式
在max中将碰撞模型优化,例如使用optimize修改器,尽可能减少面数。检查一下碰撞模型不要有单面的情况,这样可能导致导入udk时软件崩溃。
将上图中的模型分别导出成ase格式,在udk标题栏菜单上选择Brush——Import,选择ase文件,将模型导入为brush画刷。然后建立BlockingVolume。
最终得到完整的BlockingVolume:
相比较,第二种方法更简单、快捷,并且节省碰撞侦测资源,是 UDKCN实例教学系列
二〇一一年四月
做赛道碰撞模型的首选,下文将以此方式为基础。
由于地面模型相对简单,且高低起伏不平,这里我选择了到udk里面去做精确碰撞。
下面开始导入场景模型。
将所有模型转换为可编辑网格(editable mesh),并将除碰撞模型外的所有模型的轴心对齐世界,相对物体居中,将所有物体组合后坐标归零(轴心对齐原点)然后解组,最后将整个场景导出成FBX格式文件,导出时注意勾选Smoothing Groups。
至此,场景模型在3ds Max软件中的准备工作完毕。
由于在3d软件中的前期准备充分,将场景模型导入UDK的过程变得十分高效简单。
在内容管理器中将3d软件导出的fbx导入,注意选项: UDKCN实例教学系列
二〇一一年四月
这里主要注意勾选导入材质、导入贴图、自动创建材质和贴图组等选项,注意,不要勾选合并模型选项。几分钟的等待过后,在我们面前的是一批管理有序、命名科学、自动创建并赋予了材质、带有碰 UDKCN实例教学系列
二〇一一年四月
撞模型的场景模型。相对传统的ase静态模型导入,节省了大量时间和精力。
接下来我们来给赛道地面模型添加碰撞。
双击打开一个赛道地面模型,勾去Use Simple Box Collision和Use Simple Line Collision选项,使其使用模型自身作为碰撞。
同理,将其他赛道路面模型添加精确碰撞。由于路面模型高低起伏,有需要很平滑的碰撞,如果单独制作十分困难,再加上模型本身面数不多,因此在这里我选择直接使用精确碰撞。
接下来就是将所有的场景模型全都拖放到空场景中,这时可以发现,模型的轴心都没有位于模型中心,而是各有不同方向和距离的偏移,不用担心,正是因为这个原理,我们下面才能将这些暂时摆放杂乱的模型迅速在场景中对齐,拼接出完整场景。UDKCN实例教学系列
二〇一一年四月
将拖放到场景中的模型全部选中,按F4,找到Location一项,将坐标设置为0,0,0,(或者其他某个想要的位置),这时我们发现,所有的模型已经拼接到了一起,形成了一个和3d软件中完全相同的完整的场景
其中的原理是:模型导入udk时,轴心都会自动位于在3d软件 UDKCN实例教学系列
二〇一一年四月
中的原点位置,因此,在3d软件中将所有模型的轴心居中自身,这样在模型导入udk后,模型在3d软件中轴心相对于原点的位置即是模型在udk中相对于自身轴心的位置,因此,只要将所有模型轴心位置设成同一坐标,即可使模型快速对齐位置,和在3d软件中完全相同。
3dmax中,模型坐标居中后,和原点的相对位置 UDKCN实例教学系列
二〇一一年四月
导入udk后,轴心和模型的相对位置模型
结合碰撞模型,最后我们得到了下图所示的udk场景:
《
二、场景模型准备及导入》章节到此完毕。UDKCN实例教学系列
二〇一一年四月