Unity UI⭐️获取鼠标点击位置,将UI放置于该位置

2024-08-15 17:08:18 浏览数 (2)

基本的API:获取鼠标点击位置:
代码语言:javascript复制
Vector3 mousePosition= Input.mousePosition;

拓展;将UI放置于鼠标位置,需要注意的是:

基本写法:

代码语言:javascript复制
transform.GetComponent<RectTransform>().anchoredPosition3D = Input.mousePosition;

Q1:比例问题不再赘述

Q2:要注意当前屏幕分辨率与设置的屏幕分辨率要一致。如不一致需通过代码或其它方式按比例调整。

如不一致或未调整会导致设置的位置不对。

屏幕分辨率分辨率=Canvas分辨率(2688,1242),UI左下角对齐,设置位置(2688,1242),UI位置是在右上角顶点

切换到新屏幕分辨率(1920,1080),但Canvas仍是原分辨率(2688,1242)。若Canvas设置的适配宽度,那么UI新位置宽度x值2688,仍是正确的。但高度不再是1242,而是1512。

宽度=(2688/1920)*1080

即:Canvas宽度对齐情况下: 新分辨率下, 宽度比例scalex=原分辨率.x/新分辨率.x 鼠标位置=(得到的鼠标位置.x*scalex,得到的鼠标位置.y*scalex) 注:原分辨率是Canvas设置的分辨率,新分辨率是当前屏幕实际的分辨率。

大家还有什么问题,欢迎在下方留言!

0 人点赞