Всем доброго времени суток, недавно переносил первый раз созданные материалы из программы Blender в программу Unity. В процессе переноса я столкнулся с моментами, которые мне не понятны и хочу более подробно узнать про них:
1. У меня имелся сложный материал(фото 1), который я в последствии запек в простой материал(фото 2) для того чтобы его перенести в программу Unity.
2. В сложном материале я использовал микс шейдер с коэффициентом ввиде текстуры, и два цвета. У каждого цвета была карта высот(неровностей), текстура на картах высот и текстура отвечающая как коэффициент смешивания в микс шейдере была одна и таже(фото 3). При запекания материала из сложного в простой я запек цвет и нормали в две разных текстуры. После запекания в Blender все работало корректно, для изображения неровностей я использовал запеченную карту нормалей, которая была подключена к ноде "карта неровностей" в входной параметр "высота".
3. При переносе в Unity данный хвост стал выглядеть некорректно(фото 4), т.к. карта высот не перенеслась( я знаю, что я запекал высоты в нормали, но карта нормалей тоже не перенеслась и я не мог редактировать материал чтобы ее добавить. Отсюда первый вопрос: почему у меня в данном материале не перенеслась карта нормалей? Второй вопрос: Перенесенные материалы из Blender нельзя редактировать? При нажатии кнопки Edit на материале(фото 5) вылезает непонятное мне меню по редактированию шейдера(фото 6). Чтобы отредактировать материал я должен редактировать шейдер через код или я просто не могу изменить материал?
4. Я решил в итоге данный вопрос создав новый материал и самостоятельно вставив туда текстуру цвета и нормалей. Также при создании материала я увидел, что имеется слот для карты высот (Height Map) и решил проверить сработает ли материал так как мне надо, если я добавлю в этот слот текстуру с фото №3 (фото № 3), но результат был совершенно не тот(фото 7). Отсюда третий вопрос: почему не сработала корректно карта высот? Пример корректного изображения материала и сам материал в Unity на фото № 8.
Перенос материалов из Blender в Unity
Перенос материалов из Blender в Unity
- Вложения
-
- Шейдер сложного материала хвоста.png (349.63 КБ) 3291 просмотр
-
- Шейдер запеченного материала.png (465.86 КБ) 3291 просмотр
-
- Текстура на сложном материале.png (285.02 КБ) 3291 просмотр
Re: Перенос материалов из Blender в Unity
Обычно в юни таскают fbx. Если в конечном итоге у тебя получилось назначить материалы, то придерживайся освоенной тобой положительной практики, поскольку стабильности в этом вопросе нет и что-то может работать/не работать от версии к версии, те более что даже в официальном руководстве сказано, что "Текстуры и diffuse цвет не назначаются автоматически. Вручную назначьте их перетаскивая текстуру на меш в окне Scene в Unity".
У тебя остались нерешенные вопросы?
У тебя остались нерешенные вопросы?
Re: Перенос материалов из Blender в Unity
Что и почему твориться в юнити я не знаю. Из того что здесь написано вижу только одну ошибку.
Карту нормалей следует подключать к карте нормалей, а чёрно белую карту высот к карте неровностей. Это разные карты.
Re: Перенос материалов из Blender в Unity
Нерешенных вопросов не осталось) Просто люблю, когда есть полное понимание многих аспектов. Материалы перенесенные из блендера нельзя редактировать в юнити? Фото 2, дает только изменить шейдер и то как я понял через код.. Сами графы в материале серые, не дает взаимодействовать.sungreen писал(а): ↑26 июл 2025 07:26 Обычно в юни таскают fbx. Если в конечном итоге у тебя получилось назначить материалы, то придерживайся освоенной тобой положительной практики, поскольку стабильности в этом вопросе нет и что-то может работать/не работать от версии к версии, те более что даже в официальном руководстве сказано, что "Текстуры и diffuse цвет не назначаются автоматически. Вручную назначьте их перетаскивая текстуру на меш в окне Scene в Unity".
У тебя остались нерешенные вопросы?
- Вложения
-
- Меню редактирования шейдеров.png (330.3 КБ) 3252 просмотра
-
- Кнопка Эдит.png (335.33 КБ) 3252 просмотра
Re: Перенос материалов из Blender в Unity
а при нажатии на Edit не предлагает выбрать редактор шейдеров?
Re: Перенос материалов из Blender в Unity
Еще есть особенности при импорте. Возможно в Unity материалы из Blender пришли как встроенные в модель. Он не будет редактироваться, но можно сделать его редактируемыми. Выдели модель в папке Assets. В инспекторе перейди на вкладку Materials. Выбери Extract Materials. Это создаст отдельные .mat файлы и позволит редактировать материал в проекте.