Как загрузить объект.dae с текстурой и материалом
Я только начал с Минько и пытался понять этот https://github.com/aerys/minko/blob/master/doc/tutorial/06-Loading_3D_files.md учебник. Я сделал несколько шагов:
sceneManager->assets()->loader()
->queue(FIREAXE_D)
->queue(FIREAXE_N)
->queue(FIREAXE_S)
->queue(TEXTURE_FILENAME)
->queue("effect/Basic.effect")
->queue(OBJ_MODEL_FILENAME);
и теперь я пытаюсь использовать эти три текстуры с моим объектом и файлом.mtl -> материал.
auto _ = sceneManager->assets()->loader()->complete()->connect([=](file::Loader::Ptr loader)
{
auto objModel = sceneManager->assets()->symbol(OBJ_MODEL_FILENAME);
objModel->component<Transform>()->matrix()->appendScale(0.01f);
objModel->component<Transform>()->matrix()->translation(-1.f, -1.f, 0.f);
objModel->component<Texture>()->set(sceneManager->assets()->texture(FIREAXE_D));
//objModel->addComponent(sceneManager->assets()->texture(FIREAXE_N));
//objModel->addComponent(sceneManager->assets()->texture(FIREAXE_S));
root->addChild(objModel);
});
Это не будет работать, а как насчет файла.mtl? Как прикрепить его к моему объекту?
Тем не менее, учебные пособия все еще крошечные и глючные, лучше поискать примеры, но я пока не могу найти ни одного с загрузкой текстуры для объекта.
1 ответ
Это не будет работать, а как насчет файла.mtl? Как прикрепить его к моему объекту?
Ваш вопрос касается загрузки файла Collada (*.dae). Файлы Collada не имеют файлов *.mtl, файлы *.obj -.
Тем не менее, он работает одинаково для любой зависимости любого файла: они автоматически загружаются, если их действительно можно найти по указанному пути /URI.
Вы можете добавить пути включения / поиска, используя file::Options::includePaths()
или настроить способ разрешения URI с помощью file::Options::uriFunction()
, Многие другие свойства file::Options
Класс поможет вам настроить загрузку активов.
Однако учебники все еще крошечные и глючные
Если вы найдете ошибки, пожалуйста, откройте проблему на GitHub.
лучше искать примеры, но я не могу найти ни одного с загрузкой текстуры для объекта прямо сейчас.
В следующем примере загружается файл Collada вместе с анимацией и текстурами: