Какое значение имеет файл andy.obj
в примере ARCore?
Скажем, если мы заменим andy.png новым изображением, как мы можем сгенерировать .obj
файл для нового изображения?
Какое значение имеет файл andy.obj
в примере ARCore?
Скажем, если мы заменим andy.png новым изображением, как мы можем сгенерировать .obj
файл для нового изображения?
Файл OBJ описывает геометрию, файл png - текстуру, которую нужно «растянуть» над этим трехмерным объектом. Вы должны использовать программу 3D-моделирования, например Blender, чтобы создать новую модель.
Вот как вы экспортируете файлы OBJ в Blender: https://blender.stackexchange.com/questions/121/how-do-i-export-a-model-to-obj-format
Пример кода может обрабатывать только простейшие модели OBJ, которые имеют только 1 файл текстуры.
Для этих сложных моделей OBJ они обычно идут с файлом MTL, который ссылается на несколько разных файлов текстур. Чтобы справиться с этим, вам потребуется дополнительная работа над существующим кодом. Пожалуйста, проверьте код, который я использую для этого случая, если вас интересует @ https://github.com/JohnLXiang/arcore-sandbox. В частности, вы можете взглянуть на ObjectRenderer.createOnGlThread ().
Чтобы экспортировать текстуру как изображение в Blender, сделайте следующее:
Выберите свой объект и войдите в режим редактирования. Выделите все вершины / грани (нажмите «a»). Затем запустите UV Mapping, нажмите «u». И выберите один из вариантов UVMapping. Вы должны протестировать лучший вариант для вашей модели. Я не уверен, какой вариант отображения UV Mapping использует ARCore.
Затем перейдите в редактор UV / Image:
Экспортируйте UV Layout в меню и сохраните изображение.
Для создания новой .obj
модели для вашего приложения AR вам необходимо использовать программное обеспечение для 3D-авторинга, такое как Autodesk Maya, Autodesk 3dsMax, Blender, SideFx Houdini, Cinema 4D и т. Д. Эти приложения могут помочь вам создать высококачественную многоугольную модель с соответствующим .mtl
файлом текстуры. .
Но вы должны знать, что Sceneform поддерживает 3D-ресурсы не только в формате
OBJ
(где анимация не поддерживается), но также в форматеFBX
(с анимацией) и вglTF
(анимация не поддерживается).
Также приветствуются определения объектов
ASCII
иBinary
Sceneform:
Поддерживаемые файлы материалов (также известные как текстуры для ваших 3D-ресурсов) имеют следующие расширения:
MTL
,BIN
,PNG
,JPG
иSFM
.
Надеюсь это поможет.