一、问题
今天在研究Unity官方案例2D Roguelike时,遇到了一个问题:
在生成地板(Floor)和四周的围墙(OuterWall)后,再创建障碍物(Wall),则障碍物在地板的下面无法显示。
二、解决方案
在地板和障碍物的Prefab时,用到了Sprite Renderer组件。需要添加Sorting Layers , Floors和Items。
然后在地板(Floor)的Prefab选择Sorting Layer为Floor,
障碍物(Wall)的Prefab选择Sorting Layer为Items。这样就可以显示障碍物了。
三、总结
不要混淆gameobject的layer,和renderer的sorting layer,gameObject的layer应该是逻辑上的分层,
而renderer的sorting layer则用于渲染。