Я пытаюсь отобразить файлы DRC в браузере из-за гораздо лучших результатов сжатия, чем файлы OBJ. Я могу отобразить файлы DRC в браузере, но не могу добавить файл MTL. Каждый мой объект имеет DRC и MTL, и я хочу загрузить / отобразить оба в браузере.
Сначала я попытался использовать (OBJLoader_MTLLoader_example) https://github.com/mrdoob/three.js/blob/master/examples/webgl_loader_obj_mtl.html, но, похоже, он не работает с DRACOLoader.
Тогда я попробовал решение, данное на
https://github.com/google/draco/issues/197 но выдает ошибку, что функция setMaterials (в MTLLoader.js) не определена, но на самом деле. Пожалуйста, помогите.
<script
src="https://cdn.rawgit.com/mrdoob/three.js/dev/build/three.min.js">
</script>
<script src="DDSLoader.js"></script>
<script src="DRACOLoader.js"></script>
<script src="MTLLoader.js"></script>
<script src="geometry_helper.js"></script>
...
// MTL Loader
THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() );
new THREE.MTLLoader()
.load( './bed.mtl', function ( materials ) {
materials.preload();
new THREE.DRACOLoader()
.setMaterials( materials )
} );
...
scene.add (геометрия, материалы);
Ссылка на весь файл: https://pastebin.com/8FSUuSY1
Я ожидаю вывода цветного трехмерного объекта, но фактическим является черный. Это означает, что только геометрия показывает, а не цвета / материал / текстура