Game面板实现鼠标拖拽物体
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,大家都知道在Unity 场景面板(Scene面板)可以实现拖拽物体。具体操作步骤是变换工具栏选择"手"的拖拽工具(或者快捷键"Q")之后,直接用鼠标左键按住竟可以实现拖拽物体。当然这样的效果实际上并不
千家信息网最后更新 2025年02月07日Game面板实现鼠标拖拽物体
大家都知道在Unity 场景面板(Scene面板)可以实现拖拽物体。具体操作步骤是变换工具栏选择"手"的拖拽工具(或者快捷键"Q")之后,直接用鼠标左键按住竟可以实现拖拽物体。当然这样的效果实际上并不是实现了拖拽物体,因为物体的位置是没有变化的。它实际上就是移动我们的当前场景,看起来在拖拽物体似的。如图:
那我们现在想要实现在Game面板实现鼠标拖拽物体应该如何实现?其实代码很简单。直接上图:
如图,我们将该脚本挂在想要拖拽的物体上(必须挂在要被拖拽的物体上才能实现)。然后点击运行后,将鼠标指针放到该物上,按住左键即可实现。如图:
主要方法是用了协同函数。OnMouseDown()是一个鼠标触发的回调函数。不用调取该方法即可实现。所以没有写开启协同。
该方法在鼠标指针在该物体上按下时即可触发一次。然后我们需要求出鼠标位置和被拖拽的物体之间的距离,这样拖拽时只要保持两者距离不变即可。又因为鼠标在屏幕坐标系,物体在世界坐标系。所以需要两者之间的转换。都转成世界坐标系之后进而求出两者之间的距离(具体细节图片注释均已指出)。
while循环当鼠标按下时即进入,因为一直按住,bool值永远为true,但由于协同,每一帧都要跳出该函数,所以不会出现死循环。最后是等待FixedUpdate()函数。这个直接写yield return null也是可以实现的。目的只是跳出该协同,然后下一帧再进入。
这就是简单的实现鼠标拖拽物体了。
物体
鼠标
函数
面板
之间
坐标
坐标系
方法
如图
世界
位置
场景
实际
实际上
就是
工具
指针
求出
循环
上图
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
linux服务器异常重启
服务器业务口和管理口怎么设置
一站式网络技术开发市场报价
城市网络安全运营总部在哪里
杭州华鲸网络技术有限公司
抖抖直播软件开发
多服务器部署区块链
广东朝阳网络技术有限公司
网络安全技术能手技能考试
学校机房网络技术支持
app软件开发版权如何办理
暗黑2ns买哪个服务器
青岛科技大学互联网评
数据库总体设计的步骤和方法
用户量和服务器
cpc服务器拒收第一申请人
dell服务器初始密码
怎么看到我的世界版本的服务器
gis许可服务器
数据库实验中运行的按钮不亮
数据库链接池在哪设置
联想天骄8010是服务器吗
熔样机软件开发
虚拟机服务器2012网络配置
服务器 控制面板
数据库字段添加唯一约束
德州银行网络安全态势
网络技术漫画
数据库主键外键建立
江西南昌网络安全监察部门