Unity层不能按我的意愿工作

时间:2017-07-22 15:35:43

标签: c# unity5 game-engine layer unity2d

所以我对Unity非常陌生并且创造了我的第一个2D游戏,它将拥有玩家,怪物,平台和静态背景图像。

所以我做的是将2D精灵设置为默认图层上的背景图像。我还从资产商店获得了一个角色,我刚刚进入游戏并设置为用户第8层(玩家)。

平台在地图上随机生成,最初在背景中看不到,但是当我将精灵排序顺序设置为1时,它们是可见的。

现在是怪物。它们也来自资产商店,但通过C#代码插入到游戏中。如果我在屏幕上有背景,即使我为它们设置GameObject.layer = 8(与播放器相同的层),它们仍然不可见。为什么?这是什么问题。

提前致谢。

1 个答案:

答案 0 :(得分:0)

Unity有两种类型的图层,您要更改的图层不是确定图纸顺序的图层,您需要更改SpriteRenderer组件中的SortingLayer和OrderInLayer参数。 https://unity3d.com/learn/tutorials/topics/2d-game-creation/sorting-layers

如果您只使用精灵,那么您可以将它们全部保存在同一个SortingLayer中,并将背景的OrderInLayer更改为-100。 如果您使用的是3D模型,则需要手动将对象的位置设置得更近或远离相机(并将所有精灵保留在默认的SortingLayer上)。