Unity Mecanim動畫系統 之 解決模型有些動畫播放後發生的位置、方向偏轉(根骨骼動畫) 的問題
目錄
Unity Mecanim動畫系統 之 解決模型有些動畫播放後發生的位置、方向偏轉 的問題
一、簡單介紹
二、實作原理
三、效果預覽
四、實作步驟
一、簡單介紹
Unity中的一些基礎知識點。便于後期開發使用。
Unity動畫系統,也稱為“Mecanim”,提供了以下功能:
- 簡單的工作流程,設定動畫的所有元素,包括對象,角色和屬性。
- 支援導入外部建立的卡通片段和使用内置動畫編輯器制作的卡通片段。
- 人型動畫重新定位,動畫角色的運動控制可以被所有的角色模型共享,即角色的外觀(SkinedMesh)和運動(Animator)是分離的,它們互相組合之後形成最終的動畫。
- 用于編輯動畫狀态的的簡化工作流程,即動畫控制器。
- 友善預覽卡通片段,以及片段之間的插值過渡。 這使得動畫師可以獨立于程式員工作,在不運作遊戲的情況下,可以對原型和預覽動畫進行預覽。
- 管理動畫與可視化程式設計工具之間的複雜互動。
- 不同的身體部位可以使用不同的動畫邏輯控制。
- 動畫的分層和掩蔽功能。
Unity預設情況下是使用了根骨骼動畫的,在有些模型的動畫在播放後發生了位移後旋轉,在遊戲循環播放動畫後,累計了這些位移或旋轉其效果可想而知,是以在這種情況下,需要關閉這些骨骼動畫。
二、實作原理
1、把各個動畫的 Root Transform xxxx 的 Bake Into Pose 選項勾選,就可以 解決動畫自帶的位置方向的偏移
2、當然也可在模型的 Animator 元件上 勾選 Apply Root Motion,也就更便捷的 解決動畫自帶的位置方向的偏移
三、效果預覽
(男生是有動畫帶位置旋轉偏移的,女生解決動畫自帶的位置方向的偏移的)
四、實作步驟
1、找到模型的 Animation,點選對應的動畫,往下拉
2、勾選對應的動畫中的 Root Transform xxxx 的 Bake Into Pose 選項,就可以 解決動畫自帶的位置方向的偏移
3、其實如果動畫太多,一個一個修改太麻煩,可以直接在 模型的 Animator 元件上 勾選 Apply Root Motion,也就更便捷的 解決動畫自帶的位置方向的偏移
4、效果如上
(男生是有動畫帶位置旋轉偏移的,女生解決動畫自帶的位置方向的偏移的)
5、反之,如果需要動畫自帶的旋轉和位移,隻要不勾選,就行了