开工前,模型和贴图需要先准备好,本篇不涉及模型制作。 官方关于模型、贴图、导出的文 http://www.stellariswiki.com/Maya_exporter pdxexport要设置好,插件才能正常工作
模型导出相关的贴吧文: http://tieba.baidu.com/p/4540509663 mod文本设置相关的贴吧文 http://tieba.baidu.com/p/4540509663
1、关于贴图的补充说明 反射贴图的红通道留黑不用,绿通道是高光级别,蓝通道是金属光泽,alpha通道是反射光晕,灰度级别表示其强度,
漫反射贴图的alpha层,不需要透明就全填充白色即可,需要透明的区域填充灰度来设置其透明度
凹凸贴图的红通道留黑不用,蓝通道是自发光图层
2、然后我们还需要先给模型加上点位,用于游戏中安放武器,给尾炎、灯光等动画效果定位。
制作点位可以在maya里用创建->定位器,但是maya我不懂,只用来贴图和输出,因为pdxexport只支持maya。
之前做日原罪mod时用习惯了,我还是用softimage2015+crosswalk2015插件做,导入模型后,先缩小到合适的大小,贴图可贴可不贴,这里为便于观察还是贴上了。 然后get>primitive>null,创建空点,按8打开管理器,给空点命名。 无严格命名要求,这里武器就用weapon1。。。。,引擎尾炎用exhaust1。。。,机库hanger 后面设置飞船的section_templates会用到
其中方向需要注意,武器默认是朝正前的,如果需要做侧面武器位,需要旋转90度,exhaust需要旋转180度,才是朝后的,因为飞船引擎喷射方向就是后方,其他依次类推。
双击点位可以修改其属性、颜色等,加个箭头便于观察
点位设置完后,crosswalk>exportfbx导出位fbx格式
3、下面进入maya
导入该fbx格式模型,在hypershade创建phone材质,分别连接颜色、凹凸、反射对应的贴图,分配材质给模型,看看效果
打开pdxexport,点选材质,然后add”shader”attr,无出错提示即可,然后右边改好模型文件名称,选stellaris(这个注意在安装pdxexport时,我的文档里那个clausewitz.txt要设置好),导出xxxmodel_mesh,成功后会显示导出的模型面数、贴图文件名等信息。
如果游戏中需要三个分段,而只有一个模型的话,下面继续: 回到maya,删掉模型,只保留点位,再直接导出,这样我们就得到了一个只有点位的模型文件xxxmodel2_mesh、再复制一份作为xxxmodel3_mesh。 另外还需要新建一个模型,在原点创建三个点位,分别命名为part1/part2/part3,然后导出为xxship_fram.mesh或者其他名也可以,后面ship_size里定义的飞船三个分段对应的位置。
后面设置section_templates时,飞船的三个分段分别引用有模型的点位的xxxmodel_mesh,无模型点位的xxxmodel2_mesh,和xxxmodel3_mesh,由于三个分段part对应的位置坐标都是0,0,0,模型重叠,点位也和原模型重叠,这样可以正确安装武器或添加效果。
最后把3个mesh模型文件和3个贴图都拷到你的mod/gfx/xxx目录,注意贴图文件名与已导出的mesh文件引用的贴图名要严格一致,不然读取不了贴图。
Mod文本设置 要让飞船模型在游戏中生效,需要用到4个文件,这里只说和模型相关的,需要修改血量火力等参数参考其他帖子。
1、 ship_sizes/ 这里复制了一份原版battleship作为模板 其中、
@battleship_combat_speed=3 @battleship_combat_rotation=0.1 @battleship_collision_radius=10 【这三行如果有用到也一定要写进去】 caldari_titan={ ####【新增飞船名,打开设计器首先从这里读取名】 combat_max_speed = @battleship_combat_speed combat_rotation_speed =@battleship_combat_rotation collision_radius = @battleship_collision_radius } section_slots = { "bow" = { locator ="part1" } "mid" = { locator = "part2" }"stern" = { locator = "part3" } } 【多个分段,对应的点位名】 enable_default_design = yes 【可否设计】
class = shipclass_military 【军舰还是民用】 } 注:这里为说明只引用了部分参数,其他参数参考原版文件
2、section_templates/
新建文本,名字和你在ship_size的设置一样 复制一份原版的改就行,原版的飞船段有多个选择,bow/mid/sten分别对应前中后段,要改也可以在ship_size里改,这里只各取一段作为模板
ship_section_template = { key= "Leviathan" ship_size= caldari_titan fits_on_slot= bow 【分段,和ship_size里设置对应】 entity= "Leviathan_entity" 【引用的飞船文档,在xxxx_ship.asset里设置】 【这里游戏的引用规则是种族名(mammalian_01)+entity(Leviathan),或直接读取】 component_slot= { name= "LARGE_GUN_01" 槽位名 slot_size= large 槽位尺寸(大中小) slot_type= weapon 槽位类型weapon / strike_craft locatorname= "LBWeapon1" 对应的模型点位,之前已在模型里设置好 } small_utility_slots= 0 medium_utility_slots= 0 large_utility_slots= 6 设备槽位 rotation = 90,可以改方向,其他locator等参数可改位置
3、xxx_ships_entities.asset 设置飞船主体和三个分段的mesh名及其模型路径 注意格式!!,不要漏了符号
4、xxx_ships_meshes.gfx
设置飞船主体和三个分段的entities名及其应用的mesh
注意格式!!,不要漏了符号
千万注意!!! 文本设置好后要检查,如果哪里多了少了一段、或者一个{、}符号,游戏里就会出问题,轻则显示不出模型,重则跳出。 如果是用UE等工具改得文档,会自动生成一个xxx.bak,记得要删掉,这个文档也会被游戏读取,造成重复。
Ok,确认文件都在里的MOD目录的相应位置,进游戏看看效果
模型太大,在分段里显示不出来,如果需要可在00_defines.lua ENTITY_SPRITE_SHIP_SECTION_CAM_DIR= { -1.0, -0.9, 0.7 }, ENTITY_SPRITE_SHIP_SECTION_CAM_LOOK_AT= { -1, 0, 0 }, ENTITY_SPRITE_SHIP_SECTION_ZOOM_SCALE= 1.7, 把ZOOM改小一些
模型导入教程到此完,效果particles的制作看起来很麻烦,暂时只能放弃了,官方能出个效果编辑器就好了。
后面再补充添加可选飞船套装、游戏里实现半透明贴图方法。 预览:
|