找回密码
 点一下
楼主: te_a_mo

war3modeleditor&mdlvis使用技巧

  [复制链接]
发表于 2009-2-8 23:30:42 | 显示全部楼层
转不了,快疯了,和max版本有没有关系???
回复

使用道具 举报

发表于 2009-2-13 17:02:20 | 显示全部楼层
麻烦 问 一下 我 的 War3ModelEditor  保存不了文件,这是为什么···我换了几台电脑都这样,而且我是各种版本的 War3ModelEditor 都用了 ,谁来 解释一下~~
回复

使用道具 举报

 楼主| 发表于 2009-2-13 17:13:21 | 显示全部楼层
把你用War3ModelEditor保存文件失败时的截图发上来
回复

使用道具 举报

发表于 2009-2-14 04:15:39 | 显示全部楼层
M2模型转换的那个链接似乎无效 能否另外发一个 我找那个工具找了挺久了 先谢谢了
回复

使用道具 举报

发表于 2009-2-14 04:26:42 | 显示全部楼层
那个M2装换的工具WowCreature(M2)View 似乎无法链接上
可否另外发一个呢???????先谢谢了
回复

使用道具 举报

发表于 2009-2-15 12:12:23 | 显示全部楼层
兄台,你把合并软件的源模型和需求模型的位置写反了~~~~~~~~
望能改过来,会误导像我这样的新人的~~忽忽。
回复

使用道具 举报

 楼主| 发表于 2009-2-19 00:00:07 | 显示全部楼层
改了,另外那个工具对于wlk模型也是无用的,就不传了
回复

使用道具 举报

发表于 2009-2-19 00:30:16 | 显示全部楼层
不錯的教學總算讓我學習道一課~~~~~
回复

使用道具 举报

发表于 2009-3-21 04:52:21 | 显示全部楼层
郁闷 是不是少点东西啊?
1.JPG
回复

使用道具 举报

发表于 2009-3-21 11:08:33 | 显示全部楼层
楼主~本殿下回来了~.....
回复

使用道具 举报

发表于 2009-8-8 12:53:36 | 显示全部楼层

【amo】war3modeleditor&mdivis实用技巧 第一讲

本帖最后由 ⑨⑨⑨⑨⑨ 于 2012-12-12 11:18 编辑

第一讲——如何实现简单的全局动作

    首先给大家讲一下全局动作的概念,全局动作可以理解成一个周期性运动,而模型在进行所有普通动作的同时,这个周期性运动始终在工作着。比如这个法师的模型,我要让他做任何动作的时候,他手中的法杖头都能够持续的转动,这个运动就是个全局动作。
   
    要做全局动作首先要有周期,打开mdlvis,按F3进入动作编辑,在右侧栏点击全局,在里面设定周期,这里的单位1000=1秒,我们在这儿设6000,即以6秒为周期的全局运动
01.JPG
第一讲1.jpg
02.JPG    第一讲2.jpg
     现在周期有了,我们要让法杖头运动必须要建立法杖头的独立骨骼,和周期运动轨迹,进入骨骼编辑模式,你会看到很多绿色的方格子,那就是骨骼点,在这里最好找到一个暗绿色的方格子,(除总骨骼之外)那样的骨骼点一般都没有父骨骼,比较好控制。然后Ctrl+C/Ctrl+V进行复制,你会看到模型里多出一个新的骨骼点,随便给它起个名字,但不要和别的骨骼点重名。

03.JPG

04.JPG
第一讲3.jpg
第一讲4.jpg
我在这里给它起名为bone_amo001,然后将它移动到法杖头的中心位置,你要法杖头围着这个骨骼转嘛所以骨骼点一定要放在法杖头的中心轴上,然后就是绑定,将法杖头的多边形绑定在bone_amo001上,这样,法杖头就有骨骼了。
第一讲5.jpg

05.JPG
接下来进入动作编辑,在右上角选择刚刚建立的6000帧全局动作,然后进入移动编辑,选择bone_amo001骨骼点,然后在时间条右侧的帧数栏里填0,将时间放在时间条的首帧的位置,然后点右侧栏中间的“转动”按钮,在x栏填1,然后回车,因为它是绕着x轴(红轴)转动的,所以bone_amo001在首帧(0帧)时,延x轴转动1,因为首帧必须有动作,否则就会出现跳帧现象。
06.JPG
07.JPG     第一讲6.jpg
    第一讲7.jpg
   
接下来,你不要动时间轴,右键直接去点击时间轴空白的地方,会出现一个菜单,点选复制帧,然后在右侧的帧数栏里填6000,将你的时间移动到末帧位置,然后再在时间栏的空白处点击右键,点选粘贴,这样子首帧的动作就复制到末帧了,因为是周期运动,所以运动完末帧还要转回首帧,
你可以把它想象成一个圆环,我们只是在某一位置把圆环切断了,并且展开拉成一条直线,这个直线就是我们的周期,而那个被切断的位置就是首末帧,所以首末帧必须保持一致,否则会跳帧。
08.JPG    第一讲8.jpg
   第一讲9.jpg
  
09.JPG

然后做中间帧,就是3000帧的时候,在右侧帧数栏输入3000,然后点选bone_amo001骨骼点,再点旋转,x栏填入180,即在3秒内,法杖头顺时针匀速沿x轴转动了180°。
10.JPG     第一讲10.jpg
这时候你让动作自动播放,会发现一个现象,那就是在0-3000bone_amo001确实顺时针沿x轴转了180°,但在3000-6000bone_amo001却逆时针沿x轴又转回来了,这是因为你没有添加辅助帧的话,它会默认你转到最高点再转回来,所以还要再设一个辅助帧,这里为了便于计算,最好选择时间条的3/4,即4500帧,按刚才的默认运动,那么从3000帧到4500帧的bone_amo001已经逆时针往回转了90°,所以调到4500帧,点选bone_amo001,点旋转,x后面输入180,这样既补回了之前逆时针旋转的90°又让bone_amo0013000帧到4500帧能顺时针沿x转动90°,这样弄完,你再播放动作,就可以看到它旋转一周了。
11.JPG     第一讲11.jpg

现在法杖头的全局动作设好了,接下来你要把法杖放到人物的手上,因为人物运动时,法杖是抓在手里的,但现在静止姿态时法杖的位置是在脚下两腿之间,该如何调整呢?
现在我们要运用起始的全局动作,就是设置一切动作的起始动作姿态,举个例子,你建完模以后人物是站着的,但你要做的所有动作都是人骑在马上的,如果一个动作一个动作去设太麻烦了,不过你如果建立了起始全局动作,并在起始全局动作中将人物调成骑在马上的姿态,那么在所有动作里人物将不再是刚刚的站姿,而是你刚刚设定的姿态,要注意的是,设完起始姿态会影响骨骼编辑中模型的姿态和骨骼相对的坐标,这个我会在第二讲里做详细的说明。
12.JPG     第一讲12.jpg

回到刚才说的,新建一个全局,帧数为0-0,这个0帧的全局动作即起始全局动作,wow模型本身就有0帧的起始全局动作,拿来直接用就行了,进入骨骼编辑,复制bone_amo001骨骼,粘贴,新骨骼点命名为bone_amo002bone_amo002作为法杖的全局骨骼,并且要将bone_amo002设定为bone_amo001的父骨骼,它控制着整个法杖的运动和bone_amo001的运动,将法杖上的点(注意绑在bone_amo001上的点不要绑在bone_amo002上)都绑到bone_amo002上,因为右手拿着法杖,所以右手也控制着法杖的运动,所以将手部骨骼设定为bone_amo002的父骨骼,父子关系如下:手——bone_amo002——bone_amo001,骨骼设置完毕以后进入动作编辑,在右上角的动作栏中选择0帧全局动作,然后进入移动编辑,选中bone_amo002骨骼,将它移动到右手手心位置,保存。这样在起始的全局动作中,法杖就会在右手了。
13.JPG     第一讲13.jpg
   第一讲14.jpg
   第一讲15.jpg
   第一讲16.jpg
   第一讲17.jpg
   第一讲18.jpg

14.JPG

15.JPG    
16.JPG
17.JPG
18.JPG
另附附件,包括上面所讲的模型的初始状态和成品,大家可以自己去试
自己可以对照教程试.rar (2.91 MB, 下载次数: 720)

补充:关于人物模型武器的添加

首先你有一个单独的人物模型(无武器),然后用wme打开人物模型,打开节点编辑器,找到右手骨骼,就是那个曲别针的图标,双击它,然后在路径里输入武器模型的文件名(如111.mdx)保存,即可,不过在mdlvis和wme里人物模型虽看不到手上的武器,只有在导入地图的时候要将人物模型,武器模型包括他们的贴图都导入,地图里人物手里才会出现武器
回复

使用道具 举报

发表于 2009-8-8 12:58:42 | 显示全部楼层
啊啊啊啊啊啊啊啊!没有什么?灌水?
回复

使用道具 举报

发表于 2009-8-8 13:09:19 | 显示全部楼层
哦,似乎懂了,感谢AMO,希望快点写下一讲。就是合成骨骼的那部分。
回复

使用道具 举报

发表于 2009-8-8 15:21:48 | 显示全部楼层
看得头晕眼花
回复

使用道具 举报

发表于 2009-8-8 23:25:08 | 显示全部楼层

【amo】war3modeleditor&mdlvis实用技巧 第二讲

本帖最后由 ⑨⑨⑨⑨⑨ 于 2012-12-12 11:29 编辑

                                                                                       第二讲 全局动作和全局骨骼的应用
     
        在这一讲会针对于全局动作在贴图动画实例应用,以及全局骨骼对骨骼绑定,模型放缩等等的重大意义做出详细的讲解

        首先讲一下贴图动画吧,贴图动画有两种,分为单张流动图,和多张频换图。

        单张流动图只需要用一张贴图就能达到贴图运动的效果,做法如下:

        首先用wme打开你的模型,然后打开全局动作管理器,我们要新建一个全局周期动作,比如这个埃辛诺斯战刃,我们要让它表面的蓝色火焰贴图流动起来,就必须先有这么一个周期,这与上一讲中的罗宁法杖头是一个道理,这个周期假设为6667,即6.667秒,然后记下这个全局动作的id(顺便说一下,每次打开wme,全局动作的名字都是不一样的,贴图动作名和组织名也是如此。)
      第二讲1.jpg
1.jpg

      现在全局动作已经设置好了,接下来有两种方法可以将这个全局动作运用到贴图动画里。

      第一种方法是运用wme修改,首先后打开贴图动画管理器,新建,这里有三种常规运动(移动、旋转、缩放),咱们这里选择移动,然后在移动上面动态化的选栏里面打钩,点击移动,会出现一个新的窗口,最上面白框中的那一组数据记录着你贴图的运动轨迹,这里咱们看到的是0: { 0, 0, 0 }冒号左边那个0代表着时间帧,这里的0即0秒“{}”中第一个0代表着贴图坐标沿y轴从左到右的运动,第二个0代表贴图坐标沿x轴从下到上的运动,第三个0代表贴图坐标沿z轴正方向的运动,不过大家都知道,贴图是平面的,所以没有z轴,所以这一项无效。下面可以看到两个拉栏,第一个拉栏是全域顺序id,即你要使用在这个贴图动画中的全局动作的id,第二格式变换类型,分别有Bezier(矢量曲线运动)Hermite(矩阵式运动)Linear(直线运动)3种,对于这个埃辛诺斯战刃,我们在全域顺序id一栏选择咱们刚才新建的那个(id刚刚不让是你记下来嘛),变换类型选择最简单的Linear(直线运动),然后轨迹这么设,第一行保留它原来的0:{0,0,0} 第二行这么写6667: { 0, 3.98438, 0 },这就代表该贴图从0秒到第6.667秒沿x轴正方向匀速运动了3.98438个单位,至于为什么写3.98438,因为这是埃辛诺斯战刃的原始数据,比较美观。然后确定,记下这个贴图动画的id名,然后咱们进入组织编辑,先在模型视图里按住ctrl,然后用鼠标左键去点埃辛诺斯战刃上的火焰贴图多边形,这样你就选上它所对应的组织了,然后打开组织编辑,看到蓝色的那一行,双击,然后选中白色框里那一行,再双击,会出现一个窗口,在窗口里找到动画贴图id,然后选择刚刚你设好的那个,点确定,这是比较简单的方法。
    第二讲5.jpg
2.jpg
        
        第二种方法是将模型保存为mdl,然后用记事本编辑,前几步和上面那种方法一样,直到你设置完贴图动画,然后保存,用记事本打开你的mdl模型,比如你需要动画的贴图是RuulBlade.blp,然后你搜索RuulBlade.blp语句,可以看到它是模型第9个贴图,那么它的贴图id就是8,因为第一个贴图id为0,第二个为1,其他以此类推、然后搜索语句static TextureID 8(8即你贴图的id号),然后在下面加一行TVertexAnimId 0(0为你贴图动画的id号,这个和贴图id同理第一个动画id亦为0),注意在TVertexAnimId前面要复制一下static TextureID前面的空白,不能空格,否则会出错的,特别注意的是static TextureID 8和TVertexAnimId 0后面别忘了要有逗号,这个逗号建议你去别的语句里复制,否则会出错,然后保存,你就可以看到贴图运动的效果了。
    第二讲12.jpg
3.jpg

        至于刚才所说的三个动作中的旋转,你应用的时候它的格式是0: { 0, 0, 0, 1 },冒号左边的0仍是帧数,括弧中的一个0无效,可无视,第二个0代表贴图坐标沿x轴顺时针旋转,第三个0代表贴图坐标沿y轴顺时针旋转,第四个0代表贴图坐标沿z轴顺时针旋转,0为0° ,1为顺时针旋转一周即360°,那么顺时针旋转180°就是0.5,逆时针旋转180°就是-0.5,道理是差不多的,大家自己去体会吧。

        下面讲频换图

        有个经典的模型, 是大天使泰瑞尔的,它在做任何动作的时候翅膀都在不停地飘舞,非常好看,这就是典型的换频图,换频图是有多张贴图在一个周期时间段轮流变换形成的,就像幻灯片电影一样,首先咱们还是要设置一个全局动作,比如周期为1065的全局动作,这里有15张贴图作为换频贴图,设完全局以后,进入组织编辑,选择你翅膀的组织,然后双击,在贴图id那里点上勾,点击贴图id,然后你看会到一个菜单,和我们之前在流动贴图里设贴图动画的菜单差不多,下面全域顺序id拉栏选择你之前设好的1065帧全局动画,因为是多张贴图,所以也不存在变换类型问题,所以变换类型就选择none,然后上面有0:× , 0仍然是帧数时间,× 是你贴图的id,进入文本查一下你贴图的id,具体方法在上一节已经讲过,然后按顺序来,假设这一组贴图在模型贴图的次序都是按照播放顺序挨着的,首帧贴图是模型里所有贴图的第7张,那么就如下编写:
                          
                                                     
                                                                           0: 6
                                                                           71: 7
                                                                           142: 8
                                                                           213: 9
                                                                           284: 10
                                                                           355: 11
                                                                           426: 12
                                                                           497: 13
                                                                           568: 14
                                                                           639: 15
                                                                           710: 16
                                                                           781: 17
                                                                           852: 18
                                                                           923: 19
                                                                           994: 20
           
          这样子就表示在1.065秒内,15张贴图匀速接连变换,而且是循环的,保存,就可以看到效果了。
          第二讲15.jpg
4.jpg

         接下来说说全局骨骼在骨骼绑定方面的应用,很多人用截取器截取后的模型都是非标准姿态的,非标准姿态即不是普通站姿或丁字型站姿的姿态,这样的模型骨骼不大好绑,因为大多数骨骼都是按标准站姿排列的,有一种蠢办法是通过调整多边形将模型变为标准姿态,不过这个非常麻烦,现在有一种好办法就是通过全局骨骼,具体操作是这样:

比如你要将模型A的骨骼导入模型B,模型B非标准姿态,首先你用mdlvis骨骼绑定法将模型a的骨骼导入到模型b里,然后你看下原来模型A的骨骼位置,除了总骨骼(bone_b0)以外,你把它们的位置记好,然后再看看模型b,然后你对比两个模型试想一下,当模型A的骨骼点运动到模型B这个姿态的时候大概在什么位置,然后一一对应的在模型b里建立相对位置的骨骼点,名字最好别重,比如模型a的bone_b2骨骼,在模型b里简历建立的对应骨骼就叫bone_b2a,这样好一一对应,都建好之后就要把这些新建的骨骼点分别绑上所对应的多边形,注意,这些新建的骨骼点不能有任何从属关系,绑定的时候你就可以把这些新建骨骼当做它所对应的骨骼去绑,比如你要将模型A的骨骼导入模型B,模型B非标准姿态,首先你用mdlvis骨骼绑定法将模型a的骨骼导入到模型b里,然后你看下原来模型A的骨骼位置,除了总骨骼(bone_b0)以外,你把它们的位置记好,然后再看看模型b,然后你对比两个模型试想一下,当模型A的骨骼点运动到模型B这个姿态的时候大概在什么位置,然后一一对应的在模型b里建立相对位置的骨骼点,名字最好别重,比如模型a的bone_b2骨骼,在模型b里简历建立的对应骨骼就叫bone_b2a,这样好一一对应,都建好之后就要把这些新建的骨骼点分别绑上所对应的多边形,注意,这些新建的骨骼点不能有任何从属关系,绑定的时候你就可以把这些新建骨骼当做它所对应的骨骼去绑,比如模型a的手绑定的是bone_b33,那模型b手多边形所要绑的点就是bone_b33a,都绑完以后,你就该建立骨骼关系了,把新建的骨骼点与他们所对应的模型a骨骼点一一绑定,也就是说bone_b1只与bone_b1a绑定,bone_b2只与bone_b2a绑定,并且原骨骼是你新建骨骼的父骨骼,都绑完以后,在全局动作0里,你把那些自制的末端骨骼全都移动到它们所对应父骨骼的位置,这样你再播放一下动作,他就能正常运动了。

   另一个应用是模型的放大与缩小,比如说山丘之王的天神下凡技能,他之所以能变大并且动作不发生扭曲就是因为在那个动作的首帧,他的全局骨骼放大了,也就是控制他周身所有骨骼点的那块bone_b0变大了,于是所有骨骼点就像牵线木偶一样也跟着放大。(大家改的时候,只要把首帧的总骨骼放大,然后再复制首帧动作到尾帧就可以了。如果所有动作都想放大那么就建立全局0-0帧动作,在那个全局动作里放大就可以了)
回复

使用道具 举报

发表于 2009-8-9 10:10:27 | 显示全部楼层
非模型控鹿过+汁池
回复

使用道具 举报

发表于 2009-8-9 10:36:28 | 显示全部楼层
于是我毫不犹豫的一个很有价值很有意义很好很强大的支持AMO的空前绝后旷世的一个SF!
回复

使用道具 举报

发表于 2009-8-9 17:29:33 | 显示全部楼层
标记下,     人气不多啊
回复

使用道具 举报

发表于 2009-8-9 18:14:16 | 显示全部楼层
为什么我始终无法让模型顺利的转一周呢?奇怪。
回复

使用道具 举报

发表于 2009-8-9 18:16:24 | 显示全部楼层
很需要这类教程,自己研究没什么头绪!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-4-26 22:15 , Processed in 0.431843 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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