请选择 进入手机版 | 继续访问电脑版

GA地精研究院

 找回密码
 立即注册
查看: 3372|回复: 6

[教程] Delphinium的模型大坑——动作文件m3a的制作使用

[复制链接]
发表于 2012-11-25 01:07:52 | 显示全部楼层 |阅读模式
本帖最后由 jifengxiang 于 2012-11-29 12:25 编辑

这个案例是和星星一起遇到的,星星在拿到第一版的模型后没有意识到里面缺一个动作,所以第二天才告诉青蛙。在这个时候将已有动作导入到max中会比较繁琐,具体的方法会在另外一个教程 http://bbs.islga.org/read-htm-tid-1238218-page-1-fpage-1.html(施工中)提及。于是为了不再回到max里面去面对那个62000帧的模型,青蛙就用了这个方法,下面和大家分享一下。  

You can download the m3addon script from the homepage:https://github.com/flo/m3addon/. Great thanks for PrintIn!


m3a是和m3配套工作的动作文件(简单说类似于biped和.bip之间的关系,当然biped实现了动作通用化,m3a现在还无法实现)。m3a通常包含一个动作比如stand01,当读取这个文件给模型时,模型会在满足相应条件时播放这个动作(如果原来模型有同名的动作,会被这个动作替代掉)。
一个非常诱人的设想是,我们拥有大量的m3a动作文件,然后在多个模型之间共享这些动作,从而使得地图创作者不会再为缺少合适的动作而发愁。当然现阶段初步的测试来看,这一点还没有实际意义上实现(几只青蛙都太懒以至于没人测试……);
另外一个现阶段比较有实用性的用途就是“模型动作的外置化”。合理使用m3a文件可以让模型制作者不再需要通过反复修改模型原文件来增加或删减动作。而是可以独立的编辑模型动作文件,保存为m3a。然后交由地图编辑者挑选使用。那些在这一次的创作中用不到的动作不会再随着模型一直呆在地图中了,同样突然需要增加一个动作,也可以方便的用m3a来给模型打个补丁。
现阶段可以生成m3a文件的软件只有Blender和来自Println的m3addon插件。因为Blender开源、免费,因此在无法随便得到3dsMax的国外具有很高的人气。而作为模型的制作修改工具,m3addon也确实比Max所使用的m3Plugin具有更少的错误和额外的功能(比如m3addon不会出现m3Plugin在导入官方模型时意外的骨骼动作错误和蒙皮错误,同时支持物理体的显示)

青蛙自己只懂3dsmax,所以企图先在3dsmax制作带有单个额外动作的小奏模型,然后导出成m3文件,再用Blender读取并将m3输出为m3a文件——这么一个并不算友好的流程来完成。当然这个过程也只是比制作一个模型多上一步而已……
但是最后这个本来就悲催的计划惨遭失败,原因是因为每次3dsmax在导出m3文件的时候,骨骼的动画ID是随机生成的,因此两个模型的动画ID匹配不上,结果导致了悲剧。

现在PrintIn大神给m3addon插件添加了一个新的脚本transferAnimationID.py,这个脚本需要配合原版的m3addon才能运行。为了让大家使用起来更方便,星星大神写了一个bat文件,将bat打开并修改路径为你的m3addon目录。然后你就只需要拖入原模型.m3——>回车——>新动作.m3——>键入xxx.m3a——>就得到了一个可以工作的新动作文件。

原模型使用的是上次分享的小奏,现在让我们从max2011导出该模型成为m3的时候开始介绍方法:
QQ截图20121128225359.png
这是导出前的最后一步,可以看到模型包含15个动作,最后一个是Spell 06。接下来我们要给她增加一个新动作Spell 07。
导出模型,然后我们另开一个3dsmax编辑一个新动作。
在这一步我回到了早期的3dmax文档,选择了骨骼仍然是biped格式时的原始文件来添加新动作。这是因为biped自身的行为就包含了人体约束,调整起来很方便。这一部分教程在这儿
http://bbs.islga.org/forum.php?mod=viewthread&tid=1129942
这次我们就不重复介绍了,本次的动作是由@传说中的傻子制作的(当时青蛙正在做这个模型的其他东西,从这也可以看出m3a导入动作能够让多人同时做不同的部分而不互相干扰)。
然后我给傻子制作的动作用magic_spring.mse(http://bbs.islga.org/read-htm-tid-1132218-page-1-fpage-1.html)添加了头发和裙子随人体动作飘动的效果。接下来导出为FBX格式,这是为了让biped骨骼重新变为SC2可以识别的Dummy或者Bone。
将这个FBX文件重新导入到3dsmax中,注意你可以选择Dummy或者bone,建议用bone来创建新场景的骨骼
QQ截图20121128230926.png
我们删掉模型的多边形只保留骨骼,并且把动作时间用重缩放时间调整到1800帧,并且添加一个新的动作名Spell 07(同样在http://bbs.islga.org/forum.php?mod=viewthread&tid=1129942里有详细的说明)
导出这个新模型为Kanate_Spell_07.m3
在M3addon目录下打开星星写好的批处理文件
QQ截图20121128232428.png
运行——>cmd——> 拖入TransferAnim.bat ——>  回车并拖入Kanate_02_01_15.m3(原始模型)——>  回车并拖入Kanate_Spell_07.m3(新动作)——> 回车输入新动作名.m3a,再回车一次后在相同目录下会生成你的新动作,具体的图例如下
QQ截图20121128231819.png
至此你就得到了可以让原模型动起来的m3a动作文件。打开地图编辑器,在过场编辑器状态选择“添加文件”
未命名.jpg
随后选择刚才的m3a文件,然后在动画层上选择Spell 07——一切正常。
QQ截图20121128233049.png
123.gif
附件里包含了本次使用的m3addon插件、星星的批处理脚本以及案例中使用的原始模型和动作模型。
m3addon-master.rar (1.49 MB, 下载次数: 129)

点评

求排版  发表于 2012-11-28 22:53

评分

参与人数 1威望 +2 收起 理由
amo + 2 非常不错

查看全部评分

发表于 2012-11-28 23:42:15 | 显示全部楼层
来支持青蛙咯 m3a果然很有趣~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-28 23:57:23 | 显示全部楼层
最后再简单介绍一下m3a文件以及这次“拜大神”的经历。m3a文件本身就是一个m3,m3a文件即使包含几何体、粒子等通常意义上不属于动作范畴的东西也可以正常工作。换句话说,你把m3后面加个a就可以当成m3a使用了(当然这没什么意义……)。过去的一些尝试中由于max下的m3plugin插件在每次导出时使用了不同的动画ID,dds说这是从内存中随机读取的——总之每次ID都对不上——从而导致m3a和m3匹配不起来。这次的工具就是抄袭前者m3中的动画ID数据然后替换掉后者,虽然方法很暴力但是似乎一切都非常美好~
PrintIn是本次及以前转载的m3addon脚本(http://bbs.islga.org/forum.php?mod=viewthread&tid=1115053)的原作者,青蛙提交的很多关于模型的问题以及插件bug他都很认真的回复和修正了,在这儿非常感谢这位大神。如果大家认为插件还有什么需要补充的,跟他反映通常会很快得到答复。
回复 支持 反对

使用道具 举报

发表于 2012-11-29 10:15:02 | 显示全部楼层
本帖最后由 amo 于 2012-11-29 10:16 编辑

那么说只要骨骼id匹配,m3a就可以被读取;至于不扭曲,还要父子关系对应,以及骨骼的大小、位置?
另外m3a里若包含粒子,贴图动画,软体发生器,灯光,物理体这些,哪些可以被读取?
回复 支持 反对

使用道具 举报

发表于 2012-11-29 10:17:31 | 显示全部楼层
强大的青蛙~~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-29 13:34:29 | 显示全部楼层
amo 发表于 2012-11-29 10:15
那么说只要骨骼id匹配,m3a就可以被读取;至于不扭曲,还要父子关系对应,以及骨骼的大小、位置?
另外m3a ...

厄,AMO说的这些推测我没有测试和证实过……首先父子关系对应,在绝大多数时候是可以保证的,当然这和动作是否扭曲关系不是特别大,至少是比较容易避免或修正的。
骨骼的大小和位置,这个从max的经验来看,不会导致动作扭曲,只是会导致动作失真,比如一个模型手太长,结果动作穿过了身体,这种情况可能没那么好避免,现在也没有证据说明m3中带有此类修正机制(虽然不好用,但是Max确实是有的)。
粒子和贴图动画是PrintIn证实可以存在于m3a中并被读取的,但是具体的使用没人测试过,本帖可能是最早一批实现m3a动作导入SC2的……软体发生器不知道是什么……灯光和物理体(如果可以的话)应该问题不大
一个胆大包天的猜想:
可能m3a不是m3animation而是m3attachment,许多奇奇怪怪的东西都可以通过这个m3a添加到已有的模型上——比如给小奏加个挂饰,加个武器或者改个发型,可能都能通过m3a来实现……关于这一部分我打算用PS3的初音模型做一组尝试,不过估计会拖很久。
回复 支持 反对

使用道具 举报

发表于 2017-9-13 18:36:27 | 显示全部楼层
已經5年了,但還是覺得你教學很棒,太好了,帶回研究
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2018-8-20 03:45 , Processed in 0.049527 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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