网站改版 价格,天水 网站建设 招聘,网站没有关键词,企业做网站要注意哪些♥️作者#xff1a;白日参商 #x1f935;♂️个人主页#xff1a;白日参商主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识#xff0c;和大家一起努力呀#xff01;#xff01;#xff01; #x1f388;#x1f388;加油#xff01; 加油#xff01… ♥️作者白日参商 ♂️个人主页白日参商主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识和大家一起努力呀 加油 加油 加油 加油 欢迎评论 点赞 收藏 加关注 项目场景
例如项目场景在unity开发过程中我们有时候会希望在鼠标按下时开始旋转通过记录鼠标按下的位置和移动的距离来进行物体的旋转并在鼠标释放后将物体恢复到初始旋转位置。 解决方案 提针对这个需求以下是示例脚本代码 using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class ObjectRotationWithMouse : MonoBehaviour
{public float rotationSpeed 1.0f; // 旋转速度private Quaternion initialRotation; // 初始旋转private bool isRotating false; // 标记是否正在旋转private float rotationStartX; // 旋转起始点的X坐标private void Start(){initialRotation transform.rotation; // 记录初始旋转}private void Update(){if (Input.GetMouseButtonDown(0)){isRotating true;rotationStartX Input.mousePosition.x;}else if (Input.GetMouseButtonUp(0)){isRotating false;transform.rotation initialRotation; // 恢复初始旋转}if (isRotating){// 获取鼠标水平移动的值float mouseX Input.mousePosition.x - rotationStartX;// 计算旋转角度float rotationAmount mouseX * rotationSpeed * Time.deltaTime;// 围绕自身 Y 轴旋转物体transform.Rotate(Vector3.up, rotationAmount);rotationStartX Input.mousePosition.x; // 更新旋转起始点}}
} ♥️作者白日参商 ♂️个人主页白日参商主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识和大家一起努力呀 加油 加油 加油 加油 欢迎评论 点赞 收藏 加关注