红警DIY论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 13187|回复: 16

【模型篇】红警3DIY---坦克模型设置

  [复制链接]
发表于 2010-11-21 21:57:50 | 显示全部楼层 |阅读模式
本帖最后由 yangqs 于 2013-3-9 20:38 编辑

红警3DIY---坦克模型设置

本文是关于如何在3DS MAX9中对建好模的坦克类模型进行设置。
我们就拿盟军的守护者坦克来做详解:

第一节:准备工作

首先,我们用3D Ripper DX工具提取了原游戏中守护者坦克的模型,提取出来的模型是一个合并体,也就是说所有炮管、炮塔和炮底部分都附加在一起了,现在我们通过3DS MAX9中分离工具,把这四个部份分离成独立的四个模型。
未标题-11.jpg 如上图那样,我们分别把四个模型命名为chassic(炮底)、turret(炮塔)、barrel(炮管)和NewSkin_Treads(履带)。现在按键盘上的H键,在弹出的“选择对象”选项框中选择chassic(炮底)、turret(炮塔)和barrel(炮管),用移动工具复制这三个模型,选中复制出来的chassic01,把它和turret01及barrel01通过附加工具合成一个新模型,重命名为NewSkin,在右边的修改模板中,选择层次,如下图那样把模NewSkin的轴心对齐到模的中心去。
QQ截图20130309201016.jpg
选择最初的chassic(炮底)、turret(炮塔)和barrel(炮管)模型,把其余的都隐藏起来。这里我们把这最初的三个模型用做骨骼,三个模分别重命名为:Bone_Body(炮底)、Bone_turret(炮塔)和Bone_barrel(炮管),在空的地方建一个小正方形,命名为Turret_Piviot,也把它的轴对齐到自身的中心去。然后对齐到Bone_turret(炮塔)中心去,调整下在Bone_turret(炮塔)里的位置,这个Turret_Piviot位置将是Bone_turret(炮塔)旋转中心。
QQ截图20130309201119.jpg
第二节:链接关系

接下来我们要把这三个模型链接在一起,如下图操作:

1.选择Bone_barrel(炮管)模型,2.单击快捷工具栏上的“选择并链接”按钮,3.接来下单击“按名称选择”按钮或按H键,4.在出现的“选择父对象”框中选择Bone_turret(炮塔)做为父级关系,5.单击“链接”进行两个模型关系链接。
用同样的方法,把三个模型的关系制作成如下图:
15.jpg
到这里,我们坦克主体的骨骼虚拟物关系网制作完成了。

第三节:履带模型与骨骼

下面我们要进行履带的相关设置。同上两节一样,我们要制作守护者坦克的四个履带骨骼和一个履带模型共五个模型。到这里说明一下制作这些的目的,骨骼是用于在游戏中制作成动作用的,而把骨骼邦定到模型里,就是让骨骼可以控制模型,让模型按照游戏所需要的要求实现动作,如履带的动画。
现在选择履带模型NewSkin_Treads,通过上档键Shift和移动工具来复制一个履带模型NewSkin_Treads01,选择这个新的履带模型,在右边的修改模板中选择“顶点“,如图:
17.jpg
然后选择前面的一个履带全部的顶点,在修改面板中选择“分离“按键,在弹出的分离选项框中命名分离出来的模型名称,点确定,这样一个前履带模型便分离出来了,按照这个方法,分别分离出另三个履带模型,如图:
21.jpg
QQ截图20130309201627.jpg
现在要把这四个骨骼虚拟物链接到Bone_Body(炮底)骨骼中,按照前面的方法,链接成如下图的关系链:
QQ截图20130309201637.jpg 到这里所有的骨骼虚拟物制作完成。

第四节:W3D工具设置

现在要在W3D TOOLS中对它们进行设置,选择所有的骨骼模型,如下图设置:
QQ截图20130309202144.jpg 现在选择NewSkin和NewSkin_Treads两个模型如下设置:
QQ截图20130309202154.jpg
第五节:指定材质及明暗器

接下来要为模型添加材质,打开“材质编辑器“,按下图操作:
QQ截图20130309202319.jpg

第一,点击Standard按钮; 二,在弹出的“材质、贴图浏览器”中选择DirectX  Stander ;三,在弹出的替换材质中丢弃旧材质。
接着再如下图操作:
QQ截图20130309202836.jpg
我们点击DirectX明暗器下的加载项,重新加载一个RA3用的objectsallied明暗器。
QQ截图20130309202411.jpg
然后选择所需要的材质贴图,如下图:
QQ截图20130309202423.jpg
设置完成后,如下图那样选择要贴图的模型:
QQ截图20130309202435.jpg 除了履带、四个履带骨骼模型和Turret_piviot外,给所有的模型都指定加载的材质贴图。
按照上面的方法,重新选择一个材质球,为履带添加明暗器objectsalliedtread.fx,(履带必须是加载这个objectsalliedtread.fx,很多网友都没注意这点,现在说明了哈。)这并加载好履带贴图,选择履带和四个履带骨骼模型,把材质指定给它们。那么我们完成了贴图了,如下效果:
QQ截图20130309202445.jpg

第六节:添加蒙皮修改器WWSkin
现在要把模型与骨骼连系在一起。如下图操作:
QQ截图20130309203003.jpg
接下来为蒙皮修改器添加骨骼,我们要制作两个蒙皮修改器,一个用于坦克NewSkin模型,一个用于NewSkin_Treads履带模型,如下图操作:
QQ截图20130309203013.jpg
1.点击“Add Bone(添加骨骼)”按钮;2.在弹出的选择骨骼选项框中选择Bone_Body、Bone_Turret、Bone_barral三个骨骼,然后点OK;3.那么在BONES中便会出现已添加了的骨骼了。
现在选择蒙皮修改器WWSkin和NewSkin模型,把没有选择的模型隐藏起来,然后只选择NewSkin模型,点击工具栏上的“邦定到空间扭曲”按钮 ,从NewSkin模型上拖曳到蒙皮修改器WWSkin上,如下图:
46.jpg
放开鼠标左键,模型会闪一下,这样便完成了操作,这时可以看到NewSkin模型右边的修改器列表里多了一个WWSkin binding修改器,如下图:
47.jpg
选择Vertices,让它变为黄色,这时你可以看到模型显示出所有的顶点,我们先从炮底盘开始往上关联骨骼,选择所有炮底的点,如图:
49.jpg
之前我们已经把骨骼隐藏了,现在在空白地方点右键,在弹出的菜中选择“按名称取消隐藏”,出现一个“取消隐藏对象”框,我们把Bone_Body骨骼取消掉隐藏,在右边的WWSkin binding修改器面板中,我们选择Line to Bone(连接到骨骼),如图:
QQ截图20130309203210.jpg
此时,请注意鼠标形状的变化,一直来鼠标都是箭头形的,现在我们把鼠标移动到Bone_Body骨骼模型上,可以看到鼠标发生了变化,由箭头形变成了中心为空的十字形,我们对着Bone_Body骨骼模型单击左键,这个时候你可以听到电脑喇叭发出一声怪响,说明NewSkin模型成功关联了Bone_Body骨骼模型,如图:
QQ截图20130309203228.jpg
还有一种情况:当我们制作的骨骼小于模型,并且放在了模型的中心,如图中黄色的BOX模:
QQ截图20130309203246.jpg
那如何关联到它呢,我们先把属于这个骨骼范围的所有点选择好,然后在菜单栏上选择“选择对象”工具 QQ截图20130309204144.jpg ,让这个工具的图标处于被选中状态,接着我们点击右边修改栏中的Line to Bone(连接到骨骼)按钮,这时“选择对象”工具由被选择状态变成取消状态 QQ截图20130309204152.jpg ,接着,我们按一个键盘上的H键,在弹出的“拾取对象”选项框中选择要关联的骨骼,选择“拾取”按钮,这时也会听到一声电脑怪声,说明已关联。如图:
QQ截图20130309203309.jpg
用同样的方法,我们把NewSkin模型上炮塔部份和炮管部份的点分别与Bone_Turret、Bone_barral连接好。接下来的履带模型也是同样做。


第七节:最后的完成
前面的设置已完成,现在我们要为坦克添加一个Box长方形的模型,没有这个BOX你的坦克在游戏中就不能被玩家选择并控制。创建一个BOX,如图:
QQ截图20130309203704.jpg
我们先为这个BOX设置下属性,在菜单栏上点击“编辑”,弹出的菜单里选择最下面的“对象属性”,出现的“对象属性”选项框后,按下图勾选操作:
61.jpg
现在BOX已设置成下图那样了,只有点击BOX的边框才能选择到它,就不影响我们对坦克的操作了:
62.jpg
接下来还要为这个BOX设置W3D工具中的选项,按下图操作:
QQ截图20130309203916.jpg
现在重命名为OBBox。
接下来为开火时的炮口火光动画建一个BOX,命名为FX_WeaponA,这个FX_WeaponA模是用来定位炮火发射位置,如果没有这个,那么炮火就在坦克肚子里发光了。呵呵。剩下的还有车头灯发光位置设置,也是建一个BOX,如果有两个灯,那就建两个,分别为它们起个名字吧:DENG01、DENG02。坦克开过后地面会有两条履带痕迹,这里也要建两个BOX来定位置痕迹出现的位置,也起个名字:HENJI01、HENJI02,并把这两个模型放到履带后面的位置,如图:
QQ截图20130309203925.jpg
现在把FX_WeaponA、 DENG01、DENG02、HENJI01、HENJI02全选中,在W3D工具中如下图那样设置:
QQ截图20130309203933.jpg
最后一步就是把这些模型链接到坦克相应的部位上去,按照前面讲的方法链接关系如下图:
QQ截图20130309203941.jpg

第八节:导出W3X文件
现在要导出为W3X格式的游戏所需文件。在菜单栏上点“文件”中的“导出”在弹出的对话框中选择保存类型为W3D XML ASSET(*.W3X),为这个W3X起一个名字,然后保存,(注意:文件不能保存到中文名的文件夹中去。)在出现的选框中按如下操作:
QQ截图20130309204005.jpg
点OK后会出现一导出信息框,很快就消失,说明导出完成。


第九节:XML文件设置

现在要进行XML文件的相关设置,打开X:\RA3 MOD SDK\SageXml\Allied\Units目录下的AlliedAntiVehicleVehicleTech1.xml文件,找到如下的文字段:
<TruckDraw
                                id="ModuleTag_Draw"
                                OkToChangeModelColor="true"
                                LeftFrontTireBone="Bone_Tread_front_Left"
                                RightFrontTireBone="Bone_Tread_front_Right"
                                LeftRearTireBone="Bone_Tread_Back_Left"
                                RightRearTireBone="Bone_Tread_Back_Right"
                                
                                TireRotationMultiplier="0.0"               
                                InitialRecoilSpeed="0.5"
                                MaxRecoilDistance="5"
                                RecoilDamping="2.0"
                                RecoilSettleSpeed="3.0"
                                
                                ExtraPublicBone="Bone_Tread_Back_Right Bone_Tread_Back_Left Bone_Tread_front_Right Bone_Tread_front_Left  Bone_Turret Bone_Barrel HENJI01 HENJI02 Turret_Piviot FX_WeaponA DENG01 DENG02"
                                TrackMarks="EXTnkTrack"---坦克痕迹用图
                                TrackMarksLeftBone=" HENJI01"
                                TrackMarksRightBone=" HENJI02">
                                <TreadTerrainParticles>DefaultTankTerrainParticleMapping</TreadTerrainParticles>---开动时扬起的灰尘定义

                                <TreadScrollingMap---履带转动定义
                                        LeftTrack="Bone_Tread_front_Left"
                                        RightTrack="Bone_Tread_front_Right"
                                        SpeedMultiplier="-0.06"
                                        TreadDriveSpeedFraction="10%"/>
                                <TreadScrollingMap
                                        LeftTrack="Bone_Tread_Back_Left"
                                        RightTrack="Bone_Tread_Back_Right"
                                        SpeedMultiplier="-0.06"
                                        TreadDriveSpeedFraction="10%"/>
                                                                                                               
                                <ModelConditionState
                                        ParseCondStateType="PARSE_DEFAULT"
                                        RetainSubObjects="true">
                                        <Model
                                                Name="TanKe" />
                                        <WeaponFireFXBone
                                                WeaponSlotID="1"
                                                WeaponSlotType="PRIMARY_WEAPON"
                                                                BoneName="FX_WeaponA"/>---炮头火光定义
                                        <WeaponRecoilBone
                                                WeaponSlotID="1"
                                                WeaponSlotType="PRIMARY_WEAPON"
                                                BoneName="FX_WeaponB"/>
                                        <WeaponLaunchBone
                                                WeaponSlotID="1"
                                                WeaponSlotType="PRIMARY_WEAPON"
                                                BoneName="FX_WeaponA" />
                                        <WeaponFireFXBone
                                                WeaponSlotID="1"
                                                WeaponSlotType="SECONDARY_WEAPON"
                                                BoneName="FX_Laser" />
                                        <WeaponLaunchBone
                                                WeaponSlotID="1"
                                                WeaponSlotType="SECONDARY_WEAPON"
                                                BoneName="FX_Laser" />
                                        <Turret---炮塔定义
                                                TurretNameKey="Bone_Turret"
                                                                                                TurretPitch="Turret_Piviot"
                                                TurretID="1" />
                                       
                                </ModelConditionState>
以上绿色为我们要进行修改的地方,改为我们设置的名字。
灯的模块要在HeadlightDraw2.xml文件中进行设置,找到它并打开,找到如下段:
<ScriptedModelDraw
            id="ModuleTag_Draw_HeadLightL"
            AttachToBoneInAnotherModule="Deng01"
            OkToChangeModelColor="true">
    <ModelConditionState
      ParseCondStateType="PARSE_DEFAULT">
      <Model
        Name="" />
    </ModelConditionState>
    <ModelConditionState
      ParseCondStateType="PARSE_NORMAL"
      ConditionsYes="NIGHT">
      <Model
        Name="EX_Headlights" />
    </ModelConditionState>
  </ScriptedModelDraw>

  <ScriptedModelDraw
    id="ModuleTag_Draw_HeadLightR"
    AttachToBoneInAnotherModule="Deng02"
    OkToChangeModelColor="true">
    <ModelConditionState
      ParseCondStateType="PARSE_DEFAULT">
      <Model
        Name="" />
    </ModelConditionState>
    <ModelConditionState
      ParseCondStateType="PARSE_NORMAL"
      ConditionsYes="NIGHT">
      <Model
        Name="EX_Headlights" />
    </ModelConditionState>
  </ScriptedModelDraw>
     复制这段到最后,把绿色的位置改成我们的骨骼名称。保存。
     所有的东西都完成了,现在就是打包成MOD,进游戏测试吧。
01.jpg
02.jpg
03.jpg
22.jpg
23.jpg
24.jpg
24-1.jpg
25.jpg
28.jpg
30.jpg
32.jpg
39.jpg
41.jpg
45.jpg
50.jpg
53.jpg
59.jpg
67.jpg
69.jpg
70.jpg
72.jpg
74.jpg
77.jpg
78.jpg
79.jpg
QQ截图20130309203200.jpg

评分

参与人数 1威严 +4 DIY币 +6 收起 理由
飞羽若鸿 + 4 + 6 好帖!

查看全部评分

发表于 2010-11-21 23:02:16 | 显示全部楼层
不错,历害,帅呆了在......

我都不怎么会在...
发表于 2010-11-22 16:02:09 | 显示全部楼层
哈哈,真是好帖。很久没有这么好的贴了。支持,加分!
发表于 2010-11-22 21:09:01 | 显示全部楼层
呵呵,继续过来支持在.....
发表于 2010-12-9 23:15:31 | 显示全部楼层
本帖最后由 6522748 于 2010-12-9 23:17 编辑

详细的教程 但是我还是没有仔细看,要是能仔细看楼主的每句话,就不会死在履带的问题上了`
发表于 2010-12-10 21:00:05 | 显示全部楼层
呃。。 我还是那个3D Ripper DX工具的问题,我一点launch,就自动跳掉然后打开游戏,也就是说这个软件自动关闭了,而不是后台运行,表示很迷惑
 楼主| 发表于 2010-12-10 23:50:24 | 显示全部楼层
http://bbs.ra2diy.cn/forum.php?m ... &extra=page%3D1
看下这里吧。问题还是要自己去处理的。进入游戏时左上角是不是有些黄色的字啊
发表于 2010-12-11 13:04:52 | 显示全部楼层
那软件有英文介绍的,新手要训练自己解决问题的能力,更何况高手。
发表于 2013-3-4 16:10:56 | 显示全部楼层
牧星 发表于 2010-12-10 23:50
http://bbs.ra2diy.cn/forum.php?mod=viewthread&tid=373&extra=page%3D1
看下这里吧。问题还是要自己去处 ...

貌似第一第二个图配错了?
发表于 2013-3-4 16:44:41 | 显示全部楼层
冷月 发表于 2013-3-4 16:10
貌似第一第二个图配错了?

论坛更新后出的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|Archiver|手机版|管理员邮箱|红警DIY官方论坛

GMT+8, 2017-12-15 02:48 , Processed in 0.058909 second(s), 18 queries , XCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表