视频连接: https://jinndev.coding.net/s/cc313a78-e3ac-44e2-8cb0-46611ededb61
想做一个UI跟随3D物体的功能,通过Camera.convertToUINode(worldPos:Vec3, uiNode.parent)的方式转换成UI坐标。当物体在屏幕内、以及刚出屏幕时还好,但过了一会坐标值开始逆向变化,并随着物体越来越远逐渐趋于(0, 0),这是何故?
有没有办法让他继续留在屏幕外?我还想根据屏幕大小做成UI可以留在屏幕边缘指示方位的功能,结果这货自个又跑回屏幕中间了,这可咋整?
1赞
咦,没人回复咋还有提示了?
这个问题我也遇到了…然后坐标值会在屏幕的下方
也就是摄像机背对物体,并远离物体时,物体在UI上的投射坐标会逐渐趋于(0,0),怎样才能保证它在ScreenUI空间之外呢?
不是返回有深度值么,根据深度值来判断是否显示啊
不是想隐藏,是想当出屏幕后显示在屏幕边缘,结果这个边缘坐标不知道咋计算了

哎~ 大神竟是我自己,点乘的方式计算出目标是否在视线后面,是的话把转换后的UI坐标归一化后乘个大点的数,保证到屏幕外,然后就可以正常做诸如限制在屏幕边缘之类的事了。
另外cocos摄像机竟然是朝屁股后头看的,一时没习惯。