У меня есть следующее blendtree, чтобы попытаться изменить анимацию в зависимости от направления движения.
У меня есть механизм c для перемещения объекта щелчком мыши со следующим кодом:
using System.Collections;
using System.Collections.Generic;
using System.Security.Cryptography;
using UnityEngine;
public class ClickMovement : MonoBehaviour
{
public float speed = 2;
public Animator animator;
private Vector3 target;
public Rigidbody2D rb;
void Start()
{
target = transform.position;
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
target = Camera.main.ScreenToWorldPoint(Input.mousePosition);
target.z = transform.position.z;
}
transform.position = Vector3.MoveTowards(transform.position, target, speed * Time.deltaTime);
animator.SetFloat("Horizontal", transform.position.x);
animator.SetFloat("Vertical", transform.position.y);
animator.SetFloat("Magnitude", transform.position.magnitude);
}
}
Хотя, когда я запускаю сцену, спрайт проходит через анимацию как попало.
Я представляю, как я вывел в коде горизонтальные и вертикальные поплавки. Может ли кто-нибудь помочь мне в этом? Высоко оценен