캐릭터 애니메이션 1 (키보드 이벤트)

1.에셋 스토어 다운로드

이전에 배운 키보드로 객체 움직이기를 캐릭터에 입혀보겠습니다.
에셋 스토어에서 ‘UnityChan’ 이라는 캐릭터 에셋을 다운로드 합니다.
게임화면위에 [Project] -> [Art] -> [Models] -> [unitychan] 이라는 객체를 드래그로 올려놓습니다.

2.애니메이터의 생성과 연결

캐릭터 객체를 올린뒤 해야할 작업은 키보드의 반응에 따라 움직일 애니메이션을 삽입하고 연결하는 작업입니다. 이를 위해서는 애니메이션을 컨트롤하는 애니메이터 파일을 생성해야합니다.
[Assets] -> [Animations] 라는 폴더를 만들고 아래 이미지를 참고하여 애니메이터 파일을 생성합니다.
파일이름은 MainAnimator로 설정합니다.

ani

생성된 애니메이터 파일을 더블클릭 하면 애니메이터 설정화면이 뜨는데 이곳에 unitychan에 만들어져 있는 animations중 [WAIT00], [JUMP00] 파일을 드래그 하여 놓습니다.

ani

설정된 화면을 보면 ENTRY 최초 실행시에 [WAIT00] 이라는 애니메이션이 실행되며, [JUMP00] 이라는 애니메이션이 끝나면 다시 [WAIT00] 상태로 가기위해 [Make Transition] 으로 [WAIT00] 애니메이션과 연결해 줍니다.

ani

3.키보드 이벤트 연결

이제 애니메이터 설정을 끝났으니, 키보드 입력 이벤트를 코딩해 보겠습니다.
스크립트 파일을 하나 만들고 연결은 게임화면에 있는 UnityChan으로 해줍니다.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class MainController : MonoBehaviour {

    public Animator animator;

    // Start is called before the first frame update
    void Start() {
        animator = GetComponent<Animator>();
    }

    // Update is called once per frame
    void Update() {
        // Spece를 누를시 JUMP00 애니메이션 작동
        if (Input.GetKeyDown(KeyCode.Space))
        {
            animator.Play("JUMP00", -1, 0);
        }
    }
}

게임을 실행해보면 스페이스 입력시 캐릭터가 점프하는 애니메이션을 볼 수 있습니다.

완성화면

ani