在Unity中,可以通过以下代码使2D人物随着鼠标位置控制转向:

using UnityEngine;

public class CharacterController : MonoBehaviour
{
    private Vector3 mousePosition;
    private Rigidbody2D rb;
    private Vector2 direction;

    public float moveSpeed = 5f;

    void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }

    void Update()
    {
        // 获取鼠标位置
        mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition);

        // 计算鼠标位置与人物位置的方向
        direction = (mousePosition - transform.position).normalized;

        // 旋转人物朝向鼠标的方向
        transform.right = direction;

        // 控制人物移动
        rb.velocity = new Vector2(direction.x * moveSpeed, direction.y * moveSpeed);
    }
}

这段代码首先获取鼠标的屏幕位置,并将其转换为世界坐标系中的位置。然后,计算鼠标位置与人物位置之间的方向向量,并将人物的朝向设置为该方向向量。最后,使用该方向向量控制人物移动的速度和方向。

unity中2D人物随着鼠标位置控制转向的代码

原文地址: https://www.cveoy.top/t/topic/i8vF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录