Загрузка объектов с помощью класса loader
Всегда, при загрузке каких-либо объектов, будь то материалы, 3D-модели и тому подобное, нужно использовать особый тип объектов библиотеки THREE.js, называющихся loader.
Загрузчик используется для того, чтобы добавить, к примеру, материал на сцену извне.
Пример использования загрузчика — добавление текстуры на плоскость (строка 6):
let loader = new THREE.ImageLoader;
let planeGeometry = new THREE.PlaneGeometry(20, 5, 10, 10);
let planeMaterial = new THREE.MeshBasicMaterial({
//Использование загрузчика
map: loader.load("https://mywebar-a.akamaihd.net/1330/20322/Mywebar.png?hash=028902a08ce058c1a17f57b40d423ca9"),
side:THREE.DoubleSide
});
plane = new THREE.Mesh(planeGeometry, planeMaterial);
Так в чем же ограничения при использовании загрузчика?
Не со всех серверов можно импортировать файлы. Сервер, с которого вы импортируете свой файл, должен разрешать совместное использование ресурсов и иметь Access-Control-Allow-Origin. Что это такое написано здесь.
В случае, если сервер не разрешает совместное использование ресурсов, вы увидите в консоли следующую ошибку:

Как видно выше, ссылка на изображение с Google.Drive не проходит проверку, из-за чего сцена не может запуститься и появляются ошибки.
Last updated