新作「Anguish of Swordswoman 〜女剣士の苦悩〜」のWeb版を公開!http://t.co/fCcFQ73Nd4 http://t.co/VLNkmYEE8d
— カン1-Bit Rogueリリース! (@Kan_Kikuchi) November 10, 2013
↑これの開発中にて…
攻撃アニメーション終了後に,
待機モーションへスムーズに移行したいと思いググった所,
"CrossFadeQueued"なるものを発見!
CrossFadeQueuedは実行中のアニメーション終了後に,
指定したアニメーションをスムーズに移行&実行するというもの.
が,これを使って実行した所
error dt >= 0
( ´・◡・`)?
動いてはいるものの, CrossFadeQueuedされる度にエラーが吐かれる様子…
ググってみた所,英語ながら関連情報発見!
http://answers.unity3d.com/questions/170425/what-cause-error-dt-0.html
英語は分かりませんが,
animation["idle"].speed = 1.2f;
という記述から,アニメーションスピードを変更すると
CrossFadeQueuedにてエラーが…
実際にspeedを変更せずに実行してみると,エラーが出ない!やった!!
いやでもスピードは変更しないとアカンから,解決にはなっていないという…
ということで,以下代替案
Invokeは第一引数に指定した関数を,
第二引数に指定した時間後に実行するというもの.
上記の例だとInvoke_AttackStandyという関数を,
アニメ終了後(.lengthで元のアニメ時間,.speedで実行速度倍率) の
ちょっと前に実行する(-0.1f)という感じにしました.
アニメーション終了直後だとスムーズに移行出来なかったので,0.1f引きました.