一、问题

今天在研究Unity官方案例2D Roguelike时,遇到了一个问题:
在生成地板(Floor)和四周的围墙(OuterWall)后,再创建障碍物(Wall),则障碍物在地板的下面无法显示。
Unity2d组件 Sprite Renderer

二、解决方案

在地板和障碍物的Prefab时,用到了Sprite Renderer组件。需要添加Sorting Layers , Floors和Items。
Unity2d组件 Sprite Renderer
然后在地板(Floor)的Prefab选择Sorting Layer为Floor,
Unity2d组件 Sprite Renderer

障碍物(Wall)的Prefab选择Sorting Layer为Items。这样就可以显示障碍物了。
Unity2d组件 Sprite Renderer

Unity2d组件 Sprite Renderer

三、总结

不要混淆gameobject的layer,和renderer的sorting layer,gameObject的layer应该是逻辑上的分层,
而renderer的sorting layer则用于渲染。

相关文章:

  • 2021-12-26
  • 2021-08-07
  • 2022-01-24
  • 2021-12-01
  • 2022-12-23
  • 2021-05-21
  • 2022-01-19
猜你喜欢
  • 2021-04-09
  • 2021-10-29
  • 2021-07-12
  • 2021-08-04
  • 2021-09-29
  • 2021-04-12
  • 2021-05-16
相关资源
相似解决方案