У меня есть этот скрипт, и в обновлении void не имеет значения, что будет первым: назад или вверх, он всегда заставляет аниматора воспроизводить анимацию назад, ходить или бежать, он воспроизводит анимацию наполовину или полностью, и он играет часть состояния ожидания без его вызова, это означает, что ваш палец все еще находится на кнопке, поэтому он все равно должен воспроизводить анимацию вперед/назад снова и снова.
вот код:
вот код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class playerController : MonoBehaviour {
public float moveSpeed = 10f;
public float turnSpeed = 50f;
Animator anim;
// Use this for initialization
void Start () {
anim = GetComponent ();
}
// Update is called once per frame
void Update () {
if (Input.GetKey (KeyCode.S)) {
anim.SetBool ("isIdle", false);
anim.SetBool ("isWalkingBack", true);
transform.Translate (-Vector3.forward * moveSpeed * Time.deltaTime);
}
else
{
anim.SetBool ("isIdle", true);
anim.SetBool ("isWalkingBack", false);
}
if (Input.GetKey (KeyCode.W)) {
anim.SetBool ("isRunning", true);
anim.SetBool ("isIdle", false);
transform.Translate (Vector3.forward * moveSpeed * Time.deltaTime);
}
else
{
anim.SetBool ("isRunning", false);
anim.SetBool ("isIdle", true);
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/451 ... d-animator
Скрипт и аниматор контроллера персонажей Unity ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как использовать аниматор объектов для цвета фона элементов в RecyclerView?
Anonymous » » в форуме Android - 0 Ответы
- 30 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Аниматор не позволит мне не позволять мне, а не код, чтобы отключить коллайдер. Почему?
Anonymous » » в форуме C# - 0 Ответы
- 12 Просмотры
-
Последнее сообщение Anonymous
-