Files
2026-03-04 10:03:45 +08:00

28 lines
837 B
C#

using UnityEngine;
namespace RootMotion.Demos
{
public class MechSpiderController : MonoBehaviour
{
public MechSpider mechSpider;
public Transform cameraTransform;
public float speed = 6f;
public float turnSpeed = 30f;
public Vector3 inputVector => new Vector3(Input.GetAxis("Horizontal"), 0f, Input.GetAxis("Vertical"));
private void Update()
{
Vector3 tangent = cameraTransform.forward;
Vector3 normal = base.transform.up;
Vector3.OrthoNormalize(ref normal, ref tangent);
Quaternion quaternion = Quaternion.LookRotation(tangent, base.transform.up);
base.transform.Translate(quaternion * inputVector.normalized * Time.deltaTime * speed * mechSpider.scale, Space.World);
base.transform.rotation = Quaternion.RotateTowards(base.transform.rotation, quaternion, Time.deltaTime * turnSpeed);
}
}
}