大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍了unity3D如何实现三维物体跟随鼠标,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
创新互联服务项目包括柘荣网站建设、柘荣网站制作、柘荣网页制作以及柘荣网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,柘荣网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到柘荣省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
本文实例为大家分享了unity3D实现三维物体跟随鼠标的具体代码,供大家参考,具体内容如下
效果图:
1.创建一个三维物体Cylinder圆柱体 Target
2.创建词汇表Yellow材质球
3.将材质球挂载到Target物体上
4.创建脚本MouseMove.cs
MouseMove.cs代码
using UnityEngine; /* 让物体完全跟随鼠标 */ public class MouseMove : MonoBehaviour { [Header("主相机")] [Tooltip("主相机")] ////// 主相机 /// public Camera m_mainCamera; [Header("目标物体")] [Tooltip("目标物体")] ////// 目标物体 /// public Transform m_target; void Start() { isDown = false; targetWTSP = m_mainCamera.WorldToScreenPoint(m_target.position); } ////// 是否按下 /// private bool isDown; ////// 记录初始化时候target世界坐标转屏幕坐标时候的位置 WTSP==WorldToScreenPoint /// 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如何实现三维物体跟随鼠标”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!