Загрузка объектов с помощью класса 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