При переносе готовых моделек в Unity столкнулся с множеством проблем, пробую их решать по очереди. При малых знаниях 3D редакторов это всё-таки намного проще, чем пытаться сделать качественную модельку самому, а потом ещё соорудить для неё сотни анимаций.
Нормальный плагин импорта nif-моделей нашёлся только для 3DS MAX, поэтому через него и пытаюсь экспортировать в Unity. Посоветовали версию 2009 SP1, её и использую...
Проблема номер раз - текстуры
Исходная моделька состоит из нескольких частей, для некоторых из них текстуры в Максе назначились автоматически, некоторые остались без текстур. Где можно посмотреть или указать пути к текстурам - не нашёл Если в 3DS MAX и есть где-то окошко с этой информацией, то оно упрятано как самые большие ценности в Fort Knox...
Оказалось гораздо проще разбираться с текстурами при помощи специальной утилитки. При помощи этой утилитки просто составил список, какой части модельки какая текстура назначена.
При попытке экспорта из 3DS MAX в формат FBX выдаётся сообщение об ошибке вида:
Error: Texture File not Found
The texture file was not found. The texture's file path will still be saved with the FBX file -путь_и_имя_файла
При том, что по указанному пути лежит требуемый файл текстур. Потом в Unity его удаётся назначить этой части модельки, хотя тоже не без проблем.
Анализ экспортированной MAX-ом модельки непосредственно в Unity:
Моделька импортируется без текстур У тех частей модельки, где текстура в 3DS MAX была, в свойствах Materials указан элемент skin, где текстуры не было - Default. Не слишком полезная информация, особенно с учётом того, что файлов текстур там больше одной (да, знаю, что это не оптимально, но проблемы буду решать по очереди).
По списку выбрал в ресурсах нужные текстуры и "ручками" поназначал их частям модельки. На "проблемной" текстуре получил ошибку "Invalid number of mip maps. Expected 10 found 9". Тем не менее текстура выглядит на модельке вполне удовлетворительно.
Какие есть варианты коррекции "проблемной" текстуры? Я так понимаю, нужно при помощи Макса "подрихтовать" UV карту. Или нет?
Проблема номер два - отсутствие связей некоторых элементов
Глаза, уши, язык модельки импортируются в 3DS MAX относительно нулевых абсолютных координат, совершенно не там, где надо. Как их корректно привязать к голове модельки? Без "ручной подгонки", а переопределив родительский объект? В принципе это можно сделать и в Unity, но такой вариант выглядит довольно корявым. Неужели возможности редактора дешёвого игрового движка больше способностей "навороченного" коммерческого 3D редактора?
Сообщение отредактировал DragonSmile - Сб, 08 Июн 2013, 13:39
Где можно посмотреть или указать пути к текстурам - не нашёл
в матэдиторе выделить свободный слот, потом найти кнопку с изображением пипетки, нажать на нее и жмакнуть по модельке, если она имеет несколько ID - выбраный слот сформируется как Sub-Material.. в нем, под каждым ID будет уже мат с текстурой в дифузе, если текстуры нет, то имя должно быть, просто не нашлась софтиной, назначить вручную..
Цитата (DragonSmile)
При попытке экспорта из 3DS MAX в формат FBX выдаётся сообщение об ошибке вида:
просто забить на это, или создать папку *Materials* самостоятельно..
Цитата (DragonSmile)
Какие есть варианты коррекции "проблемной" текстуры?
DDS? открыть в ФШ и пересохранить.. с ними бывает такое, при экспорте теряют почему то слои..
Цитата (DragonSmile)
Я так понимаю, нужно при помощи Макса "подрихтовать" UV карту. Или нет?
ЮВ тут точно ни при чем..
Цитата (DragonSmile)
Как их корректно привязать к голове модельки?
в верхней панели инструментов есть кнопка *Align*, выделяем то что нужно выровнять, жмем на align (курсор изменится) и тыкаем по обьекту относительно которого ровняем.. но тут все будет зависеть от положения пивотов, коммерческая софтина не обязана знать какими местными условностями пользуются другие редакторы.. зы. если модельки имеют скин, то перемещаем опорную кость а не саму модель, и ровняем по кости а не модели.. cpt-nemo.ru