# [Unity3D] 캐릭터 이동 및 애니메이션 전환(Animator)

> 상태 머신(Animator)은 캐릭터 애니메이션 재생을 제어하고, 화살표는 애니메이션 전환을 제어합니다. 코드는 캐릭터 이동을 제어합니다. 매개변수 Angular Speed는 회전 속도를 제어합니다.

- 게시일: 2018-05-26
- 태그: 3D, 게임플레이, Unity, Unity3D, Unity 노트
- HTML 버전 보기: https://bilibili.cat/ko/posts/unity-animator-start
- 中文에서 AI 번역: https://bilibili.cat/posts/unity-animator-start

---

## 상태 머신(Animator)

캐릭터 애니메이션 재생을 제어하며, 화살표로 애니메이션 전환을 제어합니다

## 코드로 캐릭터 이동 제어

```csharp
public NavMeshAgent agent;
public Animator anima;
  
void Update () {
        if (Input.GetMouseButtonDown(0)){   // 按下鼠标左键，1是右键
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);// 获取屏幕坐标，转换射线
            RaycastHit hit; //保存射线碰撞信息
            if (Input.GetMouseButtonDown(0)){   // 按下鼠标左键，1是右键
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);// 获取屏幕坐标，转换射线
            RaycastHit hit; //保存射线碰撞信息
            if(Physics.Raycast(ray, out hit))// 判断碰撞
            {
                // Console.WriteLine(hit.point);
                agent.SetDestination(hit.point);// 传达指令，控制运动
            }
        anima.SetFloat("speed", agent.velocity.magnitude);// 设置Animator中speed的值
        }
```

## 매개변수 Angular Speed로 회전 속도 제어
