
使用 RectTransformUtilityScreenPointToLocalPointInRectangle 方法。
public Vector2 CurrMousePosition(Transform thisTrans)
{
Vector2 vecMouse;
RectTransform parentRectTrans = thisTransparentGetComponent<RectTransform>();
RectTransformUtilityScreenPointToLocalPointInRectangle(parentRectTrans, InputmousePosition, UICamera, out vecMouse);
return vecMouse;
}
Unity 是实时3D互动内容创作和运营平台 。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助Unity将创意变成现实。 Unity平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
可以通过做射线Ray,目标为鼠标表的坐标,Ray ray = CameramainScreenPointToRay( InputmousePosition );
然后判断ray是否有穿过物体
if( PhysicsRaycast( ray, out hit ) )
return hitcollidergameObject;
被拾取的物体需要绑物理脚本。但是如果每一帧都在调用这个的话,消耗好像挺大的。其他的方法我就不知道了,希望这个方法可以帮到你。
normalDistance 肯定有个初始值
这个数值主要用于在 MouseZoomMin 与 MouseZoomMax 中运动限制的
即 normalDistance 不能小于 MouseZoomMin 数值,也不能大于 MouseZoomMax 数值
normalDistance 这个数值在鼠标滚轮滑动时不断变化的
以上就是关于Unity UGUI怎么样获得UI在屏幕上的位置坐标全部的内容,包括:Unity UGUI怎么样获得UI在屏幕上的位置坐标、unity3D鼠标坐标和世界坐标问题、求教:Unity3d鼠标滚轮拉近与后退问题。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)