为什么maya绑定的模型导出fbx会丢失顶点法线信息?

maya做出的动画,导出FBX,在导入max时部分动画丢失,如何解决?0

maya做出的动画,导出FBX,在导入max时部分动画丢失,如何解决?

悬赏分:80 - 离问题结束还有 14 天 23 小时

使用的最新的fbx2010插件,maya和max的插件版本相同,maya导出fbx的时候弹出下列信息

请问是什么问题,急,如果有可能的话,求一下fbx里所有参数的详细解释!谢谢

注:原文写在我的百度博客上,因此百度博客的配图更清晰,另外百度博客的本文更新了mel的下载链接!

绕了很多弯子,失败了n次,得以下经验,T_T。。。记录下来,免得以后忘记。

本文主要解决两种情况下的数据导入导出:1、Maya动画导给Max;2、Maya高版本动画导给低版本。其他情况应该是类似,看完下文应该都不存在难度了。

经验总结&操作必读:

一、Maya动画基本可以分为以下几种:1、Transform动画(位移旋转缩放等)、路径动画、各类约束;2、Shape动画(点动画、变形器动画、骨骼驱动的蒙皮动画等);3、相机动画(普通相机、一点相机、两点相机、带约束的相机,带父子关系的相机)。

二、maya中的动画最好bake成逐帧动画再导出fbx,方能100%保证动画导出后和原动画一致。如果不bake成逐帧动画,可以看到动画曲线在原始场景里和fbx导出后,在不同软件的不同版本下动画曲线不一致,导致动画和原场景不一致,见下图。

三、如果实在不想bake成逐帧动画,那么至少保证导出的fbx文件版本和即将导入fbx文件的软件版本一致,比如,maya2012导出fbx到maya2011来用,那么fbx版本请选择2011。

四、bake逐帧动画并导出fbx完毕后,在导入到目标软件之前,请务必提前设置好目标软件的帧速率以匹配原场景的帧速率。尤其是导入到max,如果帧速率不对导入的动画会出问题。

五、有时候导入到maya中会完全丢失动画,尝试重启maya再导入。

六、maya骨骼动画通过fbx导入max后,虽然骨骼的动画曲线有变化,但是实际动画效果和maya保持一致。Maya带角色蒙皮的骨骼动画,将骨骼和角色模型导出fbx并导入max后,polygon模型的蒙皮效果和在maya中完全一致,nurbs模型的蒙皮效果和maya中的不一样。

七、Nurbs的Shape动画的点缓存文件Maya认,Max不认,换言之,最好不要把Nurbs文件从Maya导去Max。

八、导出的FBX如果带有点缓存目录,请不要改变点缓存目录的名字,否则会出现点缓存加载失败的情况。

九、Maya中的相机设置越简单越好,因为FBX插件不支持Maya相机的一些高级选项,例如“Shake

十、导出的FBX文件经过三维软件另存为该三维软件原生格式后,点缓存路径便由“相对fbx文件的路径”变成“相对当前项目文件夹的路径”,如果缓存位置发生改变,需要手动指定缓存路径。如果点缓存的几何体很多,建议不要更改点缓存所在目录。

第一部分:解决Shape动画(形变动画)的导入导出问题!

1、如果要将形变动画导出,请选择场景中包含形变动画的物体(懒人直接全选所有的polygon,这样导出时间可能要稍微长一点),然后创建一个set或者quick

File(s),set选择你自己创建的包含形变动画物体的set,见图1。导出完毕后会在你保存fbx文件的目录下创建一个新目录,名为“该fbx文件名”+“_fpc”,里面放的就是导出fbx的时候生成的几何体缓存,见图2。(ps:如果有导出几何体缓存不成功的情况,请先手动创建几何体缓存再导出)

图2:自动建立的缓存及缓存文件夹

3、在Max中选择Import,在导入的时候基本不用改动什么,注意根据需要调整一下场景缩放因子(Scale

图3:注意导入Max时的单位设置

4、将之前导出的fbx文件导入到Max后,如果操作无误的话,模型物体上就会自动添加一个Point

Cache的修改器,之前没改动过那个自动生成的缓存路径的话,动画导入就ok了,见图4。导入到Maya中也会自动挂载Geometry

图4:出现Point Cache修改器表示操作成功

第二部分:解决相机动画的导入导出问题!

1、普通相机的动画导出不容易出现问题,容易出现问题的是单点相机和两点相机。

2、建议bake逐帧动画之后再导出,最大限度避免动画曲线tangent发生变化从而导致动画改变的问题。

3、针对单点相机、两点相机、带约束的相机以及带父子关系的相机(甚至还锁定并隐藏了一些参数),最安全的导出方法不是导出该相机本身,而是新建一个相机,拷贝原始相机的所有参数给它,最后做一个父子约束,然后再bake成逐帧动画,然后就ok了。

4、综合以上三点,给出自动化mel script:cxMakeSimpleCloneCam.mel(点击下载),使用方法:选择欲导出的相机,将这个脚本拖入maya界面(执行该脚本)。作用:得到该相机的完全克隆版,而该克隆版的相机可以很方便的bake逐帧动画之后导出。

5、克隆相机的动画留待“第三部分:解决Transform动画的导入导出问题”一并导出fbx。

第三部分:解决Transform动画、路径动画、约束动画的导入导出问题!

1、选择场景中所有想要bake逐帧动画的物体(节点),包括带动画的Transform节点、带动画的motionPath节点、被约束的Transform节点等。

Entertainment”的预设文件(见图5),根据个人需要稍作修改即可。

图5:FBX导出使用默认预设

4、导入FBX文件到Max或者低版本的Maya,基本不用做什么更改,导进来就是对的了。

,使用方法:将这个脚本拖入maya界面(执行该脚本)即可。

如果一个场景中既包含相机动画,又包含Transform动画、路径动画、约束,也有Shape动画,且都需要导出,我的操作步骤如下:

set,如果含有大量小物件的Shape动画,可以考虑选择大量小物件combine后变为一个物体再创建set。

File(s),set选择你自己创建的包含形变动画物体的set,之后导出*.fbx文件。如果Geometry

Cache导出提示失败,那么就请先手动创建Geometry Cache再导出。

5、自然导入Maya或者Max就可以了。

我要回帖

更多关于 maya拓扑面没显示在表面 的文章

 

随机推荐