unity 如何获取到屏幕中间_Unity3D中的鼠标点击及世界-屏幕坐标变换

本文介绍了在Unity3D中如何利用Input类获取鼠标点击事件,包括鼠标按下、点击和抬起,并详细讲解了如何进行世界坐标与屏幕坐标的相互转换。通过示例代码展示了从世界坐标转换为屏幕坐标,以及将屏幕坐标还原为世界坐标的实现过程。
摘要由CSDN通过智能技术生成

鼠标点击分为三种:

(Input类)[button取0(左键),1(右键),2(中间键)]

public static bool

GetMouseButton(int button);  鼠标点击不放停留

public static bool

GetMouseButtonDown(int button);  鼠标按下

public static bool

GetMouseButtonUp(int button);  鼠标抬起

世界坐标与屏幕坐标变换

获取主摄像机_camera:public static Camera

main;该函数只读,与MainCamera相关。

再将物体cube的世界坐标转换成屏幕坐标screenV:

(Camera类)public Vector3

WorldToScreenPoint(Vector3 position);

以上都是在Start()函数中实现的。

在Update()函数中实现以下功能。

获取鼠标点击位置坐标(注意这是屏幕坐标)dianV:

(Input类)public static Vector3

mousePosition;只读,获取当前鼠标的像素位置。

再将screenV.z赋给dianV.z,因为dian.z在屏幕坐标为0。

最后将dianV从屏幕坐标转换为世界坐标wv:

(Camera类)public Vector3

ScreenToWorldPoint(Vector3 postion);

using UnityEngine;

using System.Coll

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值