using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ObjectRotation : MonoBehaviour
{
    public float rotationSpeed = 1.0f; // 旋转速度

    private Vector3 lastMousePosition; // 上一个鼠标位置

    bool isRotate;
    
    public void Start()
    {
      
    }
    private void Update()
    {
  

      if(isRotate)
        {
           
         
            if (Input.GetMouseButton(0))
            {
                float deltaX = Input.mousePosition.x - lastMousePosition.x;
                float deltaY = Input.mousePosition.y - lastMousePosition.y;

                Debug.Log("按住右键旋转");
              
                transform.Rotate(Vector3.up, deltaX * rotationSpeed * Time.deltaTime, Space.World);
                transform.Rotate(-Vector3.left, deltaY * rotationSpeed * Time.deltaTime, Space.Self);
            }

           
            float scroll = Input.GetAxis("Mouse ScrollWheel");
            transform.Translate(Vector3.forward * scroll * rotationSpeed * Time.deltaTime);

            lastMousePosition = Input.mousePosition;
        }

        
    }

   
    public void OnMouseDown()
    {
        lastMousePosition = Input.mousePosition;
    
    isRotate = true;
    }
    public void OnMouseUp()
    {
        isRotate = false;
    }
    
}

脚本挂载需要操作的物体身上

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐