[Unity3D] Moviment del personatge i canvi d'animació (Animator)

· 885 visites · actualitzat 30 de maig del 2018

Traduït per IA des de 中文 · Veure l'original

Aquest article s'ha recuperat d'instantànies de l'Internet Archive; algunes imatges es poden haver perdut.

Màquina d'estats (Animator)

Controla la reproducció de les animacions del personatge; les fletxes controlen el canvi d'animació

Control del moviment del personatge amb codi

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的值
        }

El paràmetre Angular Speed controla la velocitat de gir

Comentaris