В каком формате лучше держать модели в Unity проекте?
Привет всем!
Такой детский вопрос: в каком формате лучше держать модели в Unity — проекте? По идее от формата мало чего должно зависеть или все же что-то зависит?
Я работаю в Blender, но не встречал (или очень редко) unitupackage, которые содержат модели в формате «.blend». В основном fbx.
В каком формате все же лучше иметь модели в Unity-проекте?
#1
19:17, 5 ноя 2019
Если для себя — неважно. Если для других (на продажу) — fbx.
Почему? Потому что fbx практически все редакторы 3d поддерживают. А для открытия blend нужен именно blender.
#2
21:13, 5 ноя 2019
Fbx открывается движком из коробки. Другие форматы требуют плагины или сам софт, чтобы они вообще заимпортились в Юнити. Об этом сказано в документации. Удали блендер с компа — и ты не сможешь заимпортить .blend
#3
8:36, 9 ноя 2019
а картинки psd без фотошопа проимпортятся юнити из коробки?
и еще, искал, как проимпортить каждый видимый слой psd в отдельный спрайт — нашел несколько сторонних решений, но они все не работали (может, устарели). кто-нибудь чем-нибудь пользуется для этого?
сорри за оффтоп.
- arte_de_mort
- Постоялец
#4
14:52, 9 ноя 2019
Fbx или obj. По нашему опыту fbx лучше; на работе встречали проблемы со скейлом сцены в obj (при экспорте в obj нельзя указать scale factor). Но по большому счёту и тот, и тот можно. Unity в конечном итоге всё равно все модельки из файлов выдёргивает и пихает в собственные файлы.
Если делаешь на продажу, можно положить исходник (.blend / .ma / .max), люди не будут против, особенно если там сохранены слои или риг с анимацией или ещё что-то полезное. Но это только как бонус. Если основным файлом кладёшь .blend, то я например не смог бы открыть его, — за такое по рукам бьют 🙂
mciv
> а картинки psd без фотошопа проимпортятся юнити из коробки?
Да.
mciv
> и еще, искал, как проимпортить каждый видимый слой psd в отдельный спрайт —
> нашел несколько сторонних решений, но они все не работали (может, устарели).
> кто-нибудь чем-нибудь пользуется для этого?
Можно как все нормальные люди запустить из фотошопа export layers to files с проставленной галочкой на экспорт только видимых слоёв.
#5
21:42, 11 ноя 2019
arte_de_mort
> export layers to files
спасибо за наводку! глючит правда у меня, во все картинки какой-то один слой добавляет. может, с группами слоев плохо работает, или версия фотошопа такая попалась.
- arte_de_mort
- Постоялец
#6
23:27, 11 ноя 2019
Так он не должен с группами работать. Его задача это
> каждый видимый слой psd в отдельный спрайт
Экспорт в OBJ или FBX
Здравствуйте, помогите, пожалуйста, разобраться в экспорте. Нужно модель с 3d max экспортировать с материалами(Vray) в формат OBJ или FBX. Они будут использоваться на сайте в редакторе помещения(не знаю как точнее описать). Меня интересует возможность экспорта модели с материалами(vray), или возможно только экспортировать со стандартными матами? Буду благодарен любому совету)
На сайте c 07.12.2007
Сообщений: 141
Беларусь, Гродно
Эти форматы никакого отношения к vray не имеют, и редактор на сайте тоже явно не слыхал про vray материалы ). Опишите подробнее что от вас требуют.
На сайте c 10.03.2017
Сообщений: 39
Цитата The-AlexRF:
Эти форматы никакого отношения к vray не имеют, и редактор на сайте тоже явно не слыхал про vray материалы ). Опишите подробнее что от вас требуют.
От меня требуют модели с текстурами в любом из этих форматов. Как выяснилось они для тестов использовали модели .skp, а мне сказали нужны модели в формате obj или fbx с текстурами.
я так понял что выход наверное один — переделать все материалы в стандартные?
В каком формате лучше всего выгружать модели в three.js
Вопрос «какой формат лучше?», ответ: «тот, что больше вам подходит».
Следует знать о различиях некоторых форматов, а в частности — .obj и .fbx :
.OBJ:
- Формат является открытым.
- Формат является текстовым.
- Открытый — свободное использование где угодно. Не нужно волноваться, что вы что-то нарушаете.
- Текстовый. Т.е. human-readable . Можете открыть любым блокнотом, посмотреть, что там записано.
- Простой. Можно за полчаса написать свой загрузчик, ну и т.д.
- Из-за того, что формат текстовый, загружается загрузчиками он довольно долго.
- У формата есть определенная спецификация, однако одну и ту же геометрию можно представить в формате по-разному. Кто-то при записи в формат соблюдает все правила и пишет название модели, группы, в общем, все как положено. Кто-то записывает лишь треугольные полигоны, а кто-то записывает их многоугольниками. Поэтому часто можно встретить случаи, когда отдельный экземпляр одним загрузчиком грузится хорошо, а другим — с какими-то дикими артефактами.
- Формат не поддерживает анимации. Ну представьте, у вас текстом одна модель будет занимать кучу места, а анимации — так вообще!
.FBX:
- Формат является проприетарным и недокументированным.
- Формат является бинарным.
- Данный формат изначально был предназначен для «обмена» 3D-геометрией различных приложений, работающих с 3D. Насколько мне известно, при экспорте формата в тот же Unity последний парсит формат и сохраняет в каком-то внутреннем формате, т.е. в конечных файлах вашей игры .fbx уже не будет.
- Думаю, все (назовем их «официальные») реализации загрузчиков этого формата будут работать как подобает, ведь об этом заботится компания Autodesk.
- Формат бинарный, занимает мало места и быстро загружается.
- Формат поддерживает анимации.
- Формат не поймет человек, открыв его в текстовом редакторе.
- Формат довольно сложный.
- Из-за того, что формат проприетарный, использование может быть затруднено.
Заключение
В целом, если подытожить: если вы можете найти хорошую реализацию .fbx и вам ничего не мешает использовать именно этот формат, то используйте его. У вас будет и приемлимая скорость загрузки, и малое количество занятого дискового места.
И да. Насколько мне известно, three.js предлагает поддержку моделей, сохраненных в .json формате. Так почему бы не воспользоваться такой возможностью? Думаю, у них имеются какие-то утилиты для преобразования различных форматов в .json .
3D форматы
Импортирование мешей в Unity может быть выполнено с помощью двух основных типов файлов:
- Экспортированные 3D форматы файлов, такие как .FBX или .OBJ
- Собственные файлы 3D приложений, например такие как .Max и .Blend файлы из 3D Studio Max и Blender.
Любой из этих типов позволит вам добавлять свои меши в Unity, но есть соображения относительно того типа, который вы выберите:
Экспортированные 3D файлы
Unity может читать .FBX, .dae (Collada), .3DS, .dxf и .obj файлы, obj или Collada экспортеры могут быть найдены для многих приложений, точно также как FBX экспортеры могут быть найдены здесь
Преимущества:
- Экспортируйте только необходимые данные
- Проверяемые данные (перед импортированием в Unity, переимпортируйте в 3D пакет)
- Как правило файлы меньшего размера
- Поддерживает модульный подход — к примеру разными компонентами для интерактивности и типов коллизий
- Поддерживает другие 3D пакеты, чьи форматы не поддерживаются у нас напрямую
Недостатки:
- Может замедлять процесс прототипирования и итераций
- Легче потерять след между исходной (рабочий файл) и игровой версией данных (к примеру экспортированный FBX файл)
Собственные файлы 3D приложений
Unity также может импортировать, путём конвертации, файлы: Max, Maya, Blender, Cinema4D, Modo, Lightwave и Cheetah3D , например, .MAX, .MB, .MA и др.
Преимущества:
- Быстрый процесс итерации (для повторного импортирования в Unity сохраните исходный файл)
- Изначально просто
Недостатки:
- На машинах, задействованных в работе над Unity проектом, должны быть установлены лицензионные копии данного программного обеспечения
- Файлы, содержащие ненужные данные могут стать неоправданно большими
- Большие файлы могут замедлить процесс автосохранения
- Меньше проверяется, поэтому труднее устранить ошибки