Как программно изменить слой сортировки в Unity? - PullRequest
0 голосов
/ 30 октября 2019

Я делаю 2D игру. Я запутался, потому что есть два типа слоев. Слои и «Сортировка слоев». Кажется, что имеют значение только «Сортировка слоев».

У меня много объектов на каждом слое, и я хочу установить «Сортировочный слой» программно. Я пробовал

item.layer = LayerMask.NameToLayer("IslandLayer");

, но это только устанавливает слой, а не "слой сортировки". Есть ли способ установить «Сортировочный слой» программно?

1 Ответ

1 голос
/ 30 октября 2019

То, что вы изменили, было GameObject.layer, которое является «другим» слоем , а не SortingLayer .


Сортировочный слой довольно изменен в соответствующем компоненте Renderer, например, через Renderer.sortingLayerID с использованием SortingLayer.NameToID

item.GetComponent<Renderer>().sortingLayerID = SortingLayer.NameToID("NameOfTheSortingLayer");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...