首页 > 解决方案 > Unity - 对来自同一预制件的对象进行排序层

问题描述

我是统一的新手,一些概念仍然让我难以理解。

我用孩子(卡片)制作了一个物体并制作了预制件,然后我制作了变体并将它们放在场景中。不幸的是,卡片像图片上一样乱七八糟。孩子们在默认排序层,他们每个人都迭代了 1,2,3,4...

如果我希望一张卡在第二张卡上作为分离的对象(带有阴影和所有东西)并且我打算发送很多垃圾邮件(所以我想避免手动添加或增加每个卡的 Z),我做错了什么。

此外,它不是 UI。

描述问题的图片

提前感谢您的帮助

标签: sortingunity3d2d

解决方案


您可以简单地将“排序组”组件添加到您的卡片预制件中。

  • 在预制视图中,对于您的卡,在检查器中按“添加组件”。
  • 搜索“排序组”并点击添加。

您还应该为您的卡片创建一个新的“排序层”。

  • 单击下拉菜单并选择“添加排序层”。
  • 将其命名为“卡片层”
  • 将“排序层”添加到“软化组”以及卡片中的所有子精灵。
  • 您可以使用“Order in Layer”在新的“Card Layer”中对子对象进行排序

参考:https ://docs.unity3d.com/Manual/class-SortingGroup.html

如果您正在寻找动态文本,例如“TEST TEST”或“5”,这会变得有点复杂。在使用带有精灵和画布/UI 对象的预制件时,我遇到了很多排序问题。在这种情况下,“排序组”出现意外行为。我可以通过添加一个带有“文本网格”组件的“网格渲染”对象来解决这个问题。


推荐阅读