Sorting 如何以编程方式更改Unity中的排序层?
我正在做一个2D游戏。我很困惑,因为有两种类型的层。图层和“排序图层”。似乎只有“排序层”才重要 我在每一层上都有许多对象,我想以编程方式设置“排序层”。我试过了Sorting 如何以编程方式更改Unity中的排序层?,sorting,unity3d,layer,Sorting,Unity3d,Layer,我正在做一个2D游戏。我很困惑,因为有两种类型的层。图层和“排序图层”。似乎只有“排序层”才重要 我在每一层上都有许多对象,我想以编程方式设置“排序层”。我试过了 item.layer = LayerMask.NameToLayer("IslandLayer"); 但这只是设置层,而不是“排序层”。有没有办法以编程方式设置“排序层”?您更改的是“其他”,而不是“其他” 排序层在相应的渲染器组件中发生更改,例如通过使用 item.GetComponent().sortingLayerID=So
item.layer = LayerMask.NameToLayer("IslandLayer");
但这只是设置层,而不是“排序层”。有没有办法以编程方式设置“排序层”?您更改的是“其他”,而不是“其他”
排序层在相应的
渲染器组件中发生更改,例如通过使用
item.GetComponent().sortingLayerID=SortingLayer.NameToID(“SortingLayer的名称”);
排序层在.layer中,排序层是不同的类别。对于您的情况,您可以只设置sortingLayer nameGetComponent()。sortingLayer=“sortingLayerName”或者如果您使用Image,则需要使用Canvas对其进行更改。这不需要是GetComponent()
?@特洛伊木马否。。正如您在链接中所看到的,它是generalRenderer
基类的一个属性。如果您查看的API,您可以看到它列在“继承属性”下)