可能是因为你没有考虑到父节点的位置和缩放因素。在使用localToGlobal转换时,坐标位置是相对于当前节点的父节点的。如果父节点有位置或缩放因素,那么转换后的坐标位置也会受到影响。你可以尝试使用以下代码:

var globalPos = node.convertToWorldSpaceAR(localPos);
var screenPos = cc.Camera.main.getScreenToWorldPoint(globalPos);

其中,convertToWorldSpaceAR会将局部坐标转换为世界坐标,而getScreenToWorldPoint会将世界坐标转换为屏幕坐标。这样就可以得到正确的屏幕坐标了。

Laya 屏幕中的局部坐标转化为屏幕坐标localToGlobal转化后的坐标位置不对

原文地址: https://www.cveoy.top/t/topic/eEkm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录