Animatorの再生位置を確認するEditor拡張
需要あるかどうかわかんないけど
自作UIのスライダーからモデルのアニメーションの再生位置を制御してみる。
コードはこんな感じ。
using UnityEngine; using UnityEditor; using System.Collections; public class AnimatorSliderWindow : EditorWindow { [MenuItem("Window/Animator Slider Window")] static void Open(){ EditorWindow.GetWindow( "Animator" ); } Animator anim; float time = 0.0f; void OnSelectionChange () { GameObject gameObject = Selection.activeGameObject; anim = null; if(gameObject!=null) anim = gameObject.GetComponent<Animation>(); } void OnGUI() { time = EditorGUILayout.Slider( "animation",time,0.0f,1.0f ); if(anim!=null) anim.ForceStateNormalizedTime(time); } }
Menuから"Window/Animator Slider Window"を選んでね。
確認したいモデルをEditor上で選択した上でスライダーを動かすとモデルの再生位置が変わるよ!
何かの確認に使えるかな!?使えないかな。。
残念なのは、シーンを再生状態にしておかなきゃいけないところ。
作り終わってから、あ、これInspectorを拡張して右下に出てくるPreviewのモデルを動かした方が完全にいいじゃんて思ったけどご愛嬌。










