[Unity 확장] Animatior Controller의 제작에서 부속 자동화까지

개시하다


Unity에서 Animatior를 사용하는 경우 다음 작업이 필요합니다.
메뉴에서 Animator Controller 만들기
->완성되었다.Animatior 구성 요소에 controller 연결
이 일은 매우 번거롭기 때문에 편집 확장 자동화를 시도해 보았다.

소스 코드


프로젝트의 EDITOr 폴더 아래에 다음 스크립트를 넣으십시오.
AnimatorInspector.cs
using UnityEngine;
using UnityEditor;
using UnityEditor.Animations;

[CustomEditor(typeof(Animator))]
public class AnimatorInspector : Editor
{
    public override void OnInspectorGUI()
    {
        var animator = target as Animator;
        if (animator.runtimeAnimatorController == null)
        {
            if (GUILayout.Button("Create"))
            {
                CreateAnimatorController();
            }
        }
        this.DrawDefaultInspector();
    }

    /// <summary>
    /// AnimatorController作成 
    /// </summary>
    void CreateAnimatorController()
    {
        string fullpath = EditorUtility.SaveFilePanel("AnimatorController作成", "Assets", "New AnimatorController", "controller");
        if (fullpath.Length == 0) { return; }

        string path = "Assets" + fullpath.Substring(Application.dataPath.Length);

        //非常に単純なAnimatorControllerを生成するEditor拡張コード
        //http://qiita.com/RyotaMurohoshi/items/c1f29f9afbce910c5438
        AnimatorController controller = AnimatorController.CreateAnimatorControllerAtPath(path);

        // AnimatorコンポーネントにAnimatorControllerをアタッチ
        var animator = target as Animator;
        animator.runtimeAnimatorController = (RuntimeAnimatorController)controller;
        Debug.Log("Create: " + path, controller);
    }
}

결실


위의 스크립트를 프로젝트에 추가하면Animatior 구성 요소에 단추를 추가합니다.

Create 버튼을 누르고 저장 버튼을 누르면 자동으로 controller에 ->Animator 첨부파일을 설치합니다.홀가분하다

참고 자료


매우 간단한 Animatior Controller의 Editor 확장 코드 생성
http://qiita.com/RyotaMurohoshi/items/c1f29f9afbce910c5438

좋은 웹페이지 즐겨찾기