【Unity】:从【3ds Max】为人形骨骼 humanoid 添加动画

目录

前言

一、3dsMax中的操作

二、在Unity里编辑

1、编辑导入的动画:

2、在Unity中设置人物模型

总结


前言

众所周知,Unity有的Fbx模型可以有一种人形动画,通过这种人形动画可以实现各种人形骨骼动画之间的复用。那么问题来了,如果我再3dsMax里做了一个动画,要怎样才可以用到我目前的动画中呢?

这里写了一个简单的演示:


 

一、3dsMax中的操作

要知道的是,我们从3ds中只需要导入动画就OK,其实很多别的东西都不需要导入的。

所以我们在层级面板中选中所有的人物骨骼部分:

之后选择只导出选定对象:

然后选择Unity的工程文件,然后在导出设置的时候,记得把摄像机、灯光什么的关掉。

这样导出到Unity的资源就只有动画而没有其他的奇奇怪怪的东西。

 

二、在Unity里编辑

1、编辑导入的动画:

因为我们只选择了骨骼进行导出,所有在Unity里面可以看到我们的骨骼都十分干净:

把导入的动画文件按照如图进行设置。一般如果是人形骨骼,到这里是没有问题的。

如果有映射失败的就需要自己手动修改了。

我们自己做的动画,PickUp 也在Unity中显示出来了。

 

然后关于动画质心的问题:

在3dsMax里面,我们做动画会动人物的质心,但是在Unity里面我们会把质心的旋转移动关闭。这样一些动画在Unity里看起来就会有误差,这是因为动画设置的问题:

我们把所有BasedUpon都设置为坐标原点就OK了。

 

2、在Unity中设置人物模型

人物模型也是一样的设置方法:

然后拉出来这个Fbx做成一个人物,然后挂一个动画控制器:

注意这里的Acatar是人物模型的Avatar,而不是动画的Avatar。

之后在你的Controller中制作一个State,Motion选择你导入的动画即可:

这样我们自己制作的人物骨骼动画(Biped)就可以用在Unity中我们自己的模型中了。

 


总结

如果用程序员的话来说,Avatar相当于一个“桥模式”,我们自己导入的动画、模型都桥接到这个Avatar上,从而实现互通。

不过,这种通行模式一般会遇到的问题就是适配。不同模型之间的动画互相导入导出,由于模型之间的差异(比如模型身体比例的不同),会导致动画并不一定都表现得一样好。这个就需要各位自己调整了。

 


  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值