真*几行代码做Y排序,实现地图遮挡效果,此排序操作简单,适合场景简单的情况,只需要调整好参与排序的锚点即可,代码实现:
private sortActors() {
let nodes = this._mapManager.slotsNode.children;
let ground = nodes[0];
// 按y轴排序
nodes.sort((a, b) => {
// 地面不参与排序,否则有遮挡错误
if(ground == a) return -1;
if(ground == b) return 1;
return b.position.y - a.position.y;
});
//@ts-ignore
this._mapManager.slotsNode._children = nodes;
}
复杂场景可以看看这个: Cocos Store

