Я использую a-frame с 2018 года, чтобы показывать свои сценографии режиссерам, на которых работаю. Я использовал файлы colladas для своих объектов, и все отлично работало, а мои текстуры были такими, как я хотел. Но с тех пор, как появился webxr (aframe-v1.1.0.min), больше невозможно использовать collada. Я пробовал файлы Gltf, но они слишком тяжелые и неудовлетворительные. Поэтому я хотел знать, как вернуть колладу обратно в скрипты с рамкой. Я пробовал: collada-model-legacy.js с ColladaLoader.js в другой папке, но это не работает. У тебя есть решение? Спасибо
Как использовать модель коллады с aframe-v1.1.0.min
comment
glTF теперь является рекомендуемым форматом. Вы можете легко конвертировать с помощью github.com/KhronosGroup/COLLADA2GLTF.
- person Diego Marcos   schedule 15.02.2021
comment
спасибо за ваш ответ, но коллада для меня больше, чем формат, он графически и художественно более интересен, особенно для матовой стороны цветов и материалов, и мне не нужна анимация. Gltf слишком тяжелый и слишком яркий и много алиазинга (даже с включенным сглаживанием) Очень хочется сохранить колладу, неужели никак??? заранее спасибо
- person user9288082   schedule 15.02.2021
comment
COLLADA не подходит для приложений реального времени, а является форматом обмена для 3D-приложений. glTF предназначен для быстрого анализа нагрузки движком. По аналогии с 2D-изображениями COLLADA — это PSD, а glTF — PNG. glTF должен быть легче, чем COLLADA. glTF не предписывает алиасинг и яркость. Возможно, то, как вы загружаете модель или освещаете сцену, влияет на то, как выглядит модель. Стоит открыть отдельные вопросы по этим вопросам. Удачи
- person Diego Marcos   schedule 15.02.2021
comment
Спасибо. Я понимаю, и вы, вероятно, правы, но позвольте мне настаивать. Я долго работал над разработкой рабочего процесса с collada, а теперь это барахло. Мне достаточно коллады, и я хочу сохранить ее. Пожалуйста, дайте мне возможность продолжить использовать его с webxr и a-frame. заранее спасибо
- person user9288082   schedule 16.02.2021
Ответы (1)
Вы можете использовать любой загрузчик из репозитория three.js, а также ссылку ColladaLoader.
Вы можете создать компонент-обертку, который будет использовать загрузчик threejs и добавлять модель на сцену:
AFRAME.registerComponent("foo", {
init: function() {
const el = this.el;
// create a loader
const loader = new THREE.ColladaLoader();
// load the model
loader.load("MODEL_URL", function(model) {
el.object3D.add(collada.scene);
})
}
})
Простым примером может быть этот компонент (проверьте его со статическим и анимированные модели коллады здесь)
person
Piotr Adam Milewski
schedule
17.02.2021
Спасибо, большое спасибо. Я смогу продолжать использовать collada с потрясающим a-frame, но это не помешает мне продолжить изучение многообещающего формата gltf. Спасибо еще раз...
- person user9288082; 18.02.2021