Unity 控制刚体的移动与旋转的方法

在场景创建一个Cube,并添加刚体,如图:

编写脚本:

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

[RequireComponent(typeof(Rigidbody))]
public class RibRotate : MonoBehaviour
{
    //private Vector3 mouseStartPosition;
    private Rigidbody rigidbody;
    //private bool isMouseDown;

    private float moveSpeed = 5f;
    private float rotationSpeed = 10f;
    // Start is called before the first frame update
    void Start()
    {
        rigidbody = GetComponent<Rigidbody>();        
    }

    // Update is called once per frame
    void Update()
    {
        float vertical = Input.GetAxis("Vertical");
        float horizontal = Input.GetAxis("Horizontal");

        

        if (Input.GetMouseButton(0))
        {    
            //鼠标左键控制左右旋转
            rigidbody.angularVelocity = -transform.up * horizontal * rotationSpeed;
        }
        else if(Input.GetMouseButton(1))
        {
            //鼠标右键控制上下移动
            rigidbody.velocity = -transform.forward * vertical * moveSpeed;
        }

        //if (Input.GetMouseButtonDown(0))
        //{
        //    mouseStartPosition = Input.mousePosition;
        //    isMouseDown = true;
        //}
        //if (Input.GetMouseButtonUp(0))
        //{
        //    isMouseDown = false;
        //}

        //if (isMouseDown)
        //{
        //    // 获取鼠标移动距离和方向,并计算旋转角度
        //    float mouseX = Input.GetAxis("Mouse X");
        //    float mouseY = Input.GetAxis("Mouse Y");
        //    Vector3 rotation = new Vector3(-mouseY, mouseX, 0) * rotationSpeed;

        //    // 应用旋转
        //    transform.Rotate(rotation);
        //}
    }
}

把脚本添加到Cube中,运行:

Unity鼠标控制刚体移动旋转(实际效果不好,纯粹用来玩玩)

如视频所示,效果真的不行,只能单纯上下或左右移动旋转刚体,同时用鼠标控制效果更差。所以使用上面方法纯粹就是玩玩。 

相关推荐

  1. 【名词解释】Unity3D中刚体移动

    2023-12-15 06:28:03       8 阅读
  2. Unity 关于刚体模拟爆炸效果使用方法

    2023-12-15 06:28:03       41 阅读
  3. Unity刚体指定位置施加力方法

    2023-12-15 06:28:03       39 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-15 06:28:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-15 06:28:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-15 06:28:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-15 06:28:03       20 阅读

热门阅读

  1. PHP中什么是闭包(Closure)?

    2023-12-15 06:28:03       37 阅读
  2. elk集群 docker-compose集群运行版

    2023-12-15 06:28:03       34 阅读
  3. Spring Boot编写自定义校验注解

    2023-12-15 06:28:03       40 阅读
  4. docker-compose elk部署elk 单节点版本

    2023-12-15 06:28:03       36 阅读
  5. leetcode面试题 02.07. 链表相交

    2023-12-15 06:28:03       37 阅读
  6. 35、卷积算法总结

    2023-12-15 06:28:03       34 阅读
  7. redis在linux中安装部署

    2023-12-15 06:28:03       42 阅读