AnimatorController
参考:
アニメーターコントローラー | Unity マニュアル [公式]
概要
参考:
アニメーションシステム概要 | Unity マニュアル [公式]
使い方
- ステートマシン
- サブステートマシン
- アニメーションステート
- ブレンドツリー
- レイヤー (Layers)
- パラメーター (Parameters)
特別な状態
- Entry
- Exit
- Any State
参考:
Unity の AnimatorController の使い方 | npaka
AnimatorController の使い方を解説 | STYLY
AnimatorController を用いたアニメーション切り替え方法 | XR-Hub
AnimatorController の使い方 | Unity で魔物使いゲームを作る
ユニティちゃんでもっと Animator Controller を上手く使いたい | Unity で魔物使いゲームを作る
導入
参考:
Unity のアニメーションの切り替えシステムとスクリプト | かめくめ
UI デザイナーが Unity の Animator Controller 使ってみた – Qiita
基本
参考:
まとめ
参考:
Animator Controller をマスターして自由で自然なモーション再生!複雑な各設定項目を全て解説 | LIGHT11
Unity の AnimatorController の使い方 | npaka
Animator の個人的な逆引きリファレンス – Qiita
操作
参考:
Animator ウィンドウ | Unity マニュアル [公式]
ステートマシン
参考:
ステートマシンの遷移 | Unity 2018.4 マニュアル [公式]
サブステートマシン
参考:
アニメーションステート
- Motion
- Speed
- Multiplier
- Mirror
- Cycle Offset
- Foot IK
- Write Defaults
- Transitions
参考:
アニメーションステート | Unity マニュアル [公式]
アニメーション遷移 (Transitions)
- Has Exit Time
- Settings
- Exit Time
- Fixed Duration
- Transition Duration
- Transition Offset
- Interruption Source
- Ordered Interruption
- Conditions
参考:
Animator Controller の遷移設定 (Duration 等) | ひよこのたまご
アニメーションパラメーター
- Integer
- Float
- Bool
- Trigger
参考:
アニメーションパラメーター | Unity マニュアル [公式]
レイヤー (Animation Layers)
設定
- Weight
- Mask
- Blending
- Override
- Additive
- Sync
- IK Pass
参考:
Animator Controller の Layer を使ってモーションを一部だけブレンドしたり加算したりする | LIGHT11
Unity の Animator のレイヤーの Sync を使ってアニメーションを全て変更する | かめくめ
Unity のレイヤー、アバターマスクを使って体の一部分を別のアニメーションにする | かめくめ
アニメーションのレイヤー | Unity マニュアル [公式]
アバターマスク
参考:
Unity のレイヤー、アバターマスクを使って体の一部分を別のアニメーションにする | かめくめ
レイヤー・アバターマスクを用いてアニメーションを複数同時に再生する | XR-Hub
AnimatorController のレイヤーで移動中に上半身だけ別のモーションを行う方法 | ゴマちゃんフロンティア
アバターマスクウィンドウ | Unity マニュアル [公式]
Default State
- Set StateMachine Default State:Entry を右クリックしてメニューから「Set StateMachine Default State」を選択して既定の遷移 (濃いオレンジ色の矢印) を作成する。
- Set as Layer Default State:ステートを右クリックしてメニューから「Set as Layer Default State」を選択してレイヤーの初期状態 (オレンジ色のステート) を指定する。
参考:
アニメーションの初期ステートを変更する | TISSUE BOY
アニメーションステート | Unity マニュアル [公式]
How can I change orange animation state transitions? – Unity Forum
ブレンドツリー
参考:
遷移の条件を論理和 (OR) で組み合わせる
必要な数だけ遷移を作成し、それぞれに条件を指定する。
参考:
Animator transition conditionals is OR possible, or only and? | Unity Answers
ドアをアニメーションさせる
参考:
アニメーションのスクリプト操作 (Raycast) | Unity と Blender とムービー制作
パラメーターで遷移先を変更する (Conditions)
参考:
Unity のアニメーションの切り替えシステムとスクリプト | かめくめ
状態遷移に応じてハンドラを実行する
- StateMachineBehaviour を継承してハンドラをオーバーライドする
- トリガーと同時にタイマーを起動して処理する
参考:
Best way to know when animation enter/exit a state? | Unity Forum
How to add key frames to a new animation file in Unity? – Stack Overflow
Animator コンポーネント
参考:
Animator コンポーネント | Unity 2018.4 マニュアル [公式]
UnityEngine.Animator | Unity スクリプトリファレンス [公式]
Culling Mode
- Always Animate:常にアニメーションを更新し、カリングを行わない。
- Cull Update Transform:レンダラーが表示されていない時に、リターゲティング、IK、Transform の更新を行わない。
- Cull Completely:レンダラーが表示されていない場合に、アニメーションを完全に無効化する。
参考:
Animator の Culling Mode でハマった話 | kido Tech Blog
Culling Mode | Unity 2018.4 マニュアル [公式]
Cull Update Transforms: Doing this at a distance | Unity Forum
How does Animator Culling work? – Unity Answers
Animator Override Controller
Animator Controller による振る舞いは同じまま、アニメーションクリップだけ差し替える。
参考:
Unity の Animator Override Controller を使う | かめくめ
AnimatorOverrideController | Unity で魔物使いゲームを作る
Animator Override Controller | Unity マニュアル [公式]
SetTrigger / ResetTrigger
SetTigger
:トリガーを起動するResetTrigger
:トリガーをリセットする
参考:
Animator.SetTrigger | Unity スクリプトリファレンス [公式]
Animator.ResetTrigger | Unity スクリプトリファレンス [公式]
Character Controller speed: running vs. walking – Stack Overflow
SendMessage / SendMessageUpwards
参考:
Component.SendMessage | Unity スクリプトリファレンス [公式]
Component.SendMessageUpwards | Unity スクリプトリファレンス [公式]
StateMachineBehaviour
パブリックメソッド
- OnStateMachineEnter
- OnStateMachineExit
メッセージハンドラ
- OnStateEnter
- OnStateExit
- OnStateIK
- OnStateMove
- OnStateUpdate
参考:
Unity5 Mecanim の StateMachineBehaviour と戯れる |テラシュールブログ
Unity のアニメーターコントローラーの Behaviour でアニメを制御する | かめくめ
Unity の Animator で、StateMachineBehaviour を分離せずに制御してみる – Qiita
StateMachineBehaviour の使い方 | 初心者からわかりやすく (ame-name.com)
State Machine Behaviour について | KAYAC engineers’ blog
StateMachineBehaviour についてと注意まとめ | かせノート。
UnityEngine.StateMachineBehaviour | Unity スクリプトリファレンス [公式]
Animator.GetBehaviour | Unity スクリプトリファレンス [公式]
StateMachineBehaviour | Unity Scripting API [Official]
Animator.GetBehaviour | Unity Scripting API [Official]
現在のステートを取得する (GetCurrentAnimatorStateInfo)
参考:
Unity の Animator の遷移状態をスクリプトで取得し遷移させるかどうかを決める | かめくめ
Animator で現在のステートを取得する | naru design
Animator.GetCurrentAnimatorStateInfo | Unity スクリプトリファレンス [公式]
Current animator state name? | Unity Forum
Get name of current animation state – Stack Overflow
Animations.AnimatorController
参考:
Animator に設定されている layer と state を実行時に取得してみた | kandy codings 開発ブログ