新人求助,使用unity做2.5d的时候屏幕坐标和世界坐标的转换问题
unity3d吧
全部回复
仅看楼主
level 3
贴吧用户_08ZaV47
楼主
不管点击屏幕的什么地方,使用Camera.main.ScreenToWorldPoint得到的结果都是一样的。(摄像机跟随人物移动)。。并且结果跟人物的位置绑定,尝试过自己写一个屏幕地址直接转换,但是结果是一样的
2021年02月22日 06点02分
1
level 6
风封峰枫凤
screentoworldpoint的参数需要传入z轴坐标,否则是默认的0,所以得出的结果不会变化
2021年02月22日 12点02分
2
贴吧用户_08ZaV47
但是在2d的情况下输出过鼠标点击的位置,input.mousePosition的z轴也是0,但screentoworldpoint结果变了
2021年02月22日 14点02分
贴吧用户_08ZaV47
找到原因了,camera设置成perspective后,不管点哪里screentoworldpoint就只输出同一个值
2021年02月22日 14点02分
风封峰枫凤
@贴吧用户_08ZaV47
2d是正交模式,与z轴无关,直接使用input.mousePosition也可以,3d模式下需要给input.mousePosition设置z坐标,你没有设置z轴所以才会点哪里都是一个值
2021年02月22日 15点02分
贴吧用户_08ZaV47
@风封峰枫凤
感谢,解决了,,虽然位置偏了点
2021年02月22日 15点02分
1