Unity動畫過渡


最近在做一個小游戲,涉及到動畫的過渡,但是由於不了解過渡設置導致出現十分奇怪的結果。下面在自己的實驗基礎上介紹一下這些參數的具體含義。


如圖,是一個從跑到滑行的過渡。假設這個過渡是從A到B。

Has Exit Time:這個意思是A在什么時候過渡到B,即A在這個時刻發生過渡的動作,你可以把它理解為一個特殊的過渡條件,類似time=exit time一樣,如果有設置過渡條件,那么就是同時滿足這兩個條件時才發生過渡,也就是如果在exit time之前已經滿足了你的條件,那么在exit time這個時刻發生過渡;否則,只能等到動畫重新播放一遍,再次到達exit time的時候,才會發生過渡。如果你希望滿足你的條件時候立馬發生過渡,那么最好不要勾選這個選項。


Transition Offset:這個意思是A過渡到B時,B從哪里開始播放,比如你的Transition Offset為0.5,那么A過渡到B之后會從B的50%處開始播放,而不會從頭開始播放。


其實Has Exit Time和Transition Offset結合使用才能達到效果,比如A是行走的動畫,B是跑的動畫,那么很可能出現這種情況,A在邁出左腳走的時候過渡到了B,B正好也是從左腳開始跑,那么就會出現鬼畜了,想象一下。正常應該是邁出左腳,右腳開始加速。那么你就可以控制A的exit time為左腳結束,B的Transition Offset為右腳開始,這樣就完美了的過渡了。


Transition Duration:過渡的時間,這個就是字面的意思。從A動畫完全到B需要多久,注意勾選了Fixed Duration,那么這個時間以秒為單位,否則的話以A的時間為基礎。其實這個是用來做緩沖的,比如A為跳躍,B為站立,如果A沒有落地的過程(也就是A的結尾是在空中),那么會出現播放完A到B,從空中瞬移到地面,如果設置了這個時間,那么就會有下落的過程。當然,一般情況下跳躍有上升也有下落,不會只有上升。


Interruption Source:這個其實可以理解為打斷的優先級,如果大家用過any state就知道,如果滿足any state到某個狀態C的過渡條件,那么會立即過渡到C,此時正在播放的動畫會被打斷。這里就是說當前的動畫可以被哪個狀態打斷,當然,any state的優先級永遠最高,然后就是按照選項的優先級來。




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM