unity23——项目内游戏模型动画穿地或者不在原点的解决办法
程序员文章站
2022-03-02 15:46:37
如上图,有些朋友们在做游戏开发中,经常会在unity中出现,一播放模型动画,模型的下半身就穿入低下的问题。这个时候有些程序员就会说,这是美术的问题。美术没做好。而这个时候,美术打开自己的模型制作软件max、maya等,发现自己的模型在软件中运行的好好的,完全没什么问题。然后,这两个部门就开始撕B,导致项目进行很缓慢。那么好,下面上干货。到底是谁的问题呢?其实要我说,都能有问题,因为我下面提供两个方法,美术也能解决,程序还能解决,但是要是想彻底解决,并且灵活控制角色在运行中的高度,除了用代码锁死之外....
如上图,有些朋友们在做游戏开发中,经常会在unity中出现,一播放模型动画,模型的下半身就穿入低下的问题。
这个时候有些程序员就会说,这是美术的问题。美术没做好。而这个时候,美术打开自己的模型制作软件max、maya等,发现自己的模型在软件中运行的好好的,完全没什么问题。
然后,这两个部门就开始撕B,导致项目进行很缓慢。
那么好,下面上干货。到底是谁的问题呢?
其实要我说,都能有问题,因为我下面提供两个方法,美术也能解决,程序还能解决,但是要是想彻底解决,并且灵活控制角色在运行中的高度,除了用代码锁死之外,你们可以试试用我的方法。
1.美术需要做到的工作
第一给所有骨骼的父对象链接一个虚拟对象,就是图一中的绿色方框。
第二,给这个绿色虚拟体在首帧跟尾帧分别K一帧,位移旋转缩放均为o
第三,把人形骨骼调整为标准骨骼,三角形盆骨取消,三角形颈部勾选(如果用的不是bip骨骼则不需要)
2.程序需要做到的工作
选中人物模型的FBX。把这个选项的参数按照途中调整为humanoid
并且如下图,把这个地方的勾全打上。其中绿色勾选下方的数值,有一个是控制模型高度的,这个需要程序设置好,设置好后,模型就会永远锁定在这个高度下做动画,除了父对象产生的位移。
当两个部门都做到自己应该做的工作之后。你会发现,你的项目中的角色,再也不会出现做动画下陷。并且还能解决一些其他的bug。比如动作融合,混合的时候,过度动作的某一个帧,或者某一个部位总拉不会启示动作点。人形骨骼导入unity转换成humanoid爆出黄色叹号,提示山三角补个不匹配,等等。一些小的问题,都顺便避免了。
本文地址:https://blog.csdn.net/qq_37576129/article/details/107608044