2016-11-26 3 views
2

У меня есть проект, который сделан в одной из предыдущих версий единства и после того, как я модернизировал его в Unity 5.4 Я все время получаю эту ошибку:Неверный идентификатор уровня

недопустимый идентификатор уровня. Используйте уникальный идентификатор слоя (который не совпадает с его индексом в списке).

У меня есть исследование об этом, но я не могу найти правильный ответ. Поэтому я подумал, что, возможно, у кого-то была аналогичная проблема.

При необходимости я могу предоставить более подробную информацию. Спасибо за ваше время.

+0

Похоже, вам нужно в основном узнать о слоях ... это фундаментальная часть Unity3D https://docs.unity3d.com/Manual/class-TagManager.html – Fattie

+0

У меня есть функция, в которой я проверяю это SpriteRenderer, равный нулю, и чем я пытался установить sortingLayerID, передав число и работал в Unity 4.6, но в Unity 5 у меня была ошибка, я не знаю почему. Я думал, что это не из-за кода. Но потом я использовал sortingLayerName, передав имя, и теперь он работает. Спасибо, в любом случае! – Yupi

ответ

2

Вы можете найти все слои в

Edit -> Project Settings -> Tags & Layers 

Вы можете найти идентификатор уровня от его имени

int id = LayerMask.NameToLayer("layer name"); 

Также вы можете (и вы должны) использовать имя вместо идентификатора почти везде.

+0

Привет, спасибо, ты указал мне в правильном направлении. У меня есть функция, в которой я проверяю, что SpriteRenderer равен нулю, и я пытался установить sortingLayerID, передав число и работал в Unity 4.6, но в Unity 5 у меня была ошибка. Я не знаю почему. Но потом я использовал sortingLayerName, передав имя, и теперь он работает. Спасибо чувак! – Yupi

Смежные вопросы