我已经编写了一些工具,可以在Unity中用于我的项目中的关卡编辑。但是当在Mac上打开项目时,有一件事看起来表现不同。获取场景中的坐标似乎以相同的方式工作,但是当我调用
时camera.ScreenToWorldPoint(posInScene)
在Windows上返回正确的位置,但在mac上它返回完全不同的东西。任何想法,这可能是什么原因?或者我如何解决这个问题?代码在OnSceneGUI中运行。当然,如果需要为mac编写不同的东西,那么我将依赖于编译代码。了解差异的原因当然也很不错。
我注意到的一个可能相关的事情是,在PC上,camera.rect总是camera.rect(x:0.00,y:0.00,width:1.00,height:1.00),但是出于某种奇怪的原因,在mac上它是“布局”事件(x:0.00,y:-0.99,宽度:2.00,高度:2.00)。有人可以解释一下吗? :o
答案 0 :(得分:2)
我不知道此问题的根本原因是什么,但解决方法是使用HandleUtility.GUIPointToWorldRay
而不是camera.ScreenToWorldPoint
。