1. 程式人生 > >Unity (一) Animator:Curves : 曲線運用的兩個案例

Unity (一) Animator:Curves : 曲線運用的兩個案例

組件 過程 以及 nim 角色 技術 span png -1

案例1:

在角色死亡動畫中,角色倒地,然而碰撞體並沒有進行調整,如果對此角色位置進行射擊,還會有碰撞檢測,為了避免這種問題,可以運用曲線Curves將角色的碰撞體進行調整

Curves:曲線

技術分享

在動畫的Animations下面

如圖:角色死亡動畫播放後(播放過程中),碰撞體不變

技術分享

運用曲線Curves將角色的碰撞體隨著死亡動畫進行調整:

1、設置好角色的碰撞體,以及計算好倒地後碰撞體需要調整後的值

技術分享

角色原始碰撞體,高Heright為:2, 中心點Center的高為 1

死亡後變成:Heright=0.5,Center的高為0.25

技術分享

註:為什麽不能只改變碰撞體的高,還要改變中心點的高?:

因為中心點不下降的話,碰撞體會在原來1位置,進行上下回縮:

不改變中心點的話死亡動畫播放時將如圖:

技術分享

2、在死亡動畫的Curves裏定義2個float變量,繪制曲線,

技術分享

曲線Hight:將身高從2變成0.5,

曲線Center:將中心點從1變成0.25

在Parameters裏定義2個跟曲線名字一致的float變量

Hight,

Center

技術分享

3、給角色添加腳本:

技術分享

這樣播放死亡動畫時,碰撞體就可以隨著死亡動作降低了

技術分享

案例2:角色吶喊動畫,運用曲線喊出高低不同的聲音

1、繪制曲線從1漸變到0

技術分享

2、定義參數

技術分享

3、給角色添加AudioSource組件和音樂片段

4、添加腳本:

從動畫中將曲線的值拿到 賦給AudioSource.volume

技術分享

這樣AudioSource的音量會隨著吶喊動畫的曲線呈現1到0的Volume值,

Unity (一) Animator:Curves : 曲線運用的兩個案例