这篇文章主要介绍了unity3D如何实现三维物体跟随鼠标,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
本文实例为大家分享了unity3D实现三维物体跟随鼠标的具体代码,供大家参考,具体内容如下
效果图:
1.创建一个三维物体Cylinder圆柱体 Target
2.创建词汇表Yellow材质球
3.将材质球挂载到Target物体上
4.创建脚本MouseMove.cs
MouseMove.cs代码
using UnityEngine; /* 让物体完全跟随鼠标 */ public class MouseMove : MonoBehaviour { [Header("主相机")] [Tooltip("主相机")] /// <summary> /// 主相机 /// </summary> public Camera m_mainCamera; [Header("目标物体")] [Tooltip("目标物体")] /// <summary> /// 目标物体 /// </summary> public Transform m_target; void Start() { isDown = false; targetWTSP = m_mainCamera.WorldToScreenPoint(m_target.position); } /// <summary> /// 是否按下 /// </summary> private bool isDown; /// <summary> /// 记录初始化时候target世界坐标转屏幕坐标时候的位置 WTSP==WorldToScreenPoint /// </summary> private Vector3 targetWTSP; void Update() { if (Input.GetMouseButtonDown(0)) { isDown = true; } if (Input.GetMouseButtonUp(0)) { isDown = false; } } private void LateUpdate() { if (isDown) { Vector3 mouseVec3 = m_mainCamera.ScreenToWorldPoint( new Vector3(Input.mousePosition.x, Input.mousePosition.y, targetWTSP.z) ); m_target.position = mouseVec3; } } }
5.新建一个空物体Script,并将MouseMove.cs脚本挂载上去,再将相机和Target物体拖拽到脚本上
感谢你能够认真阅读完这篇文章,希望小编分享的“unity3D如何实现三维物体跟随鼠标”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。