Three.js
From three.js
Загрузчики
В этом разделе рассматриваются различные загрузчики, используемые для загрузки изображений, материалов, текстур, шрифта и т.д.
|
AnimationLoader - класс для загрузки клипов анимации.
BufferGeometryLoader - загрузчик для загрузки BufferGeometry.
CompressedTextureLoader - базовый класс для загрузчика блочных текстур.
DataTextureLoader - базовый класс для загрузки типовых двоичных форматов текстур.
FontLoader - класс для загрузки шрифта в JSON-формате
ImageLoader - класс для загрузки изображений.
Loader - базовый класс для реализации загрузчиков.
MaterialLoader - класс для загрузки материалов в формате JSON.
TextureLoader - класс для загрузки текстуры.
|
AudioLoader - класс для загрузки AudioBuffer.
Cache - система кэширования, используемая внутри FileLoader.
CubeTextureLoader - класс для загрузки кубической текстуры.
FileLoader - низкоуровневый класс для загрузки ресурсов.
JSONLoader - загрузчик для загрузки объектов в JSON формате.
LoaderUtils - некоторые вспомогательные загрузочные функции.
|
|
DefaultLoadingManager - менеджер загрузки, применяемый по умолчанию.
LoadingManager - обрабатывает и отслеживает загружаемые и ожидающие загрузки данные. |
AnimationLoader
Класс для загрузки клипов анимации в формате JSON. Для загрузки файлов, внутри класса, используется FileLoader.Пример
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.AnimationLoader();
// load a resource (загрузка ресурса) loader.load( // resource URL(URL-адрес ресурса) 'animations/animation.js',
// onLoad callback (функция обратного вызова, вызываемая после загрузки) function ( animations ) { // animations is an array of AnimationClips // анимация - это массив AnimationClips },
// onProgress callback (функция обратного вызова, вызываемая в процессе загрузки) function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); },
// onError callback (функция обратного вызова, вызываемая при ошибке) function ( err ) { console.log( 'Произошла ошибка' ); } );
Конструктор
AnimationLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый AnimationLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь или URL к файлу. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженная анимация.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Начинает загрузку с URL-адреса и передает загруженную анимацию функции, указанной в onLoad..parse(
(обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json, onLoad )
json — обязателен
onLoad — функция, вызываемая по завершении разбора (парсинга) JSON объекта.
Анализирует (разбирает) объект JSON и передает результаты функции, приведенной в аргументе onLoad.
Отдельные клипы объекта будут обработаны с помощью метода AnimationClip.parse.Исходники
AudioLoader
Класс для загрузки AudioBuffer. Для загрузки файлов, внутри класса, используется FileLoader.Пример
// instantiate a listener (создаем экземпляр слушателя) var audioListener = new THREE.AudioListener();
// add the listener to the camera (добавляем слушателя к камере) camera.add( audioListener );
// instantiate audio object (создаем экземпляр аудиообъекта) var oceanAmbientSound = new THREE.Audio( audioListener );
// add the audio object to the scene (добавляем к сцене аудиообъект) scene.add( oceanAmbientSound );
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.AudioLoader();
// load a resource (загружаем ресурс) loader.load( // resource URL (адрес ресурса) 'audio/ambient_ocean.ogg', // onLoad callback // функция обратного вызова, вызываемая после загрузки ресурса function ( audioBuffer ) { // set the audio object buffer to the loaded object // устанавливаем буфер аудиообъекта для загруженного объекта oceanAmbientSound.setBuffer( audioBuffer );
// play the audio - воспроизводим аудио oceanAmbientSound.play(); }, // onProgress callback // функция обратного вызова, вызываемая во время загрузки function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); }, // onError callback // функция обратного вызова, вызываемая при ошибках загрузки function ( xhr ) { console.log( 'Произошла ошибка' ); } );
Конструктор
AudioLoader( context,
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
context — AudioContext, используемый загрузчиком. По умолчанию это window.AudioContext.
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый AudioLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — url-адрес ресурса, обязательный аргумент.
onLoad — функция, которая будет вызываться при завершении загрузки. Аргументом должен быть загруженный текст ответа.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Начинает загрузку из url и передает загруженный AudioBuffer функции, указанной в onLoad.Исходники
BufferGeometryLoader
Загрузчик для загрузки BufferGeometry. Для загрузки файлов, внутри класса, используется FileLoader.Пример
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.BufferGeometryLoader();
// load a resource (загрузка ресурса) loader.load( // resource URL (URL-адрес ресурса) 'models/json/pressure.json', // Function when resource is loaded // функция, вызываемая при загрузке ресурса function ( geometry ) { var material = new THREE.MeshLambertMaterial( { color: 0xF5F5F5 } ); var object = new THREE.Mesh( geometry, material ); scene.add( object ); }, // Function called when download progresses // функция, вызываемая при процессе загрузки function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); }, // Function called when download errors // функция, вызываемая при ошибке загрузки function ( xhr ) { console.log( 'An error happened' ); } );
Другие примеры
WebGL / geometry / colors / lookuptable
Конструктор
BufferGeometryLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый BufferGeometryLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — url-адрес ресурса, обязательный аргумент.
onLoad — функция, которая будет вызываться при завершении загрузки. Аргументом должен быть загруженный текст ответа.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Начинает загрузку из url и вызывает функцию, указанную в onLoad, с разобранным содержимым ответа..parse(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — разбираемая структура в формате JSON.
Метод разбирает (анализирует) структуру JSON и возвращает and return a BufferGeometry.Исходники
Cache
Простая система кэширования, используемая внутри FileLoader.Примеры
WebGL / geometry / text WebGL / interactive / instances / gpu WebGL / loader / ttf
Применение
Чтобы включить кэширование во всех загрузчиках, использующих FileLoader, установитеTHREE.Cache.enabled = true
Свойства
.enabled
Свойство определяет, будет ли включено кэширование. Значением по умолчанию является false..files
Объект, удерживающий кэшированные файлы.Методы
.add( key, file )
key — строковый ключ, который будет связан с кэшируемым файлом.
file — файл, который нужно кэшировать.
Метод добавляет запись в кэш с ключом, ссылающимся на файл. Если по этому ключу уже содержится файл, то он перезаписывается..get( key )
key — строковый ключ.
Метод получает значение key. Если ключа не существует, возвращается значение undefined, т.е. неопределено..remove( key )
key — строковый ключ, связанный с кэшированным файлом.
Удаляет кэшированный файл, связанный с данным ключом..clear( )
Удаляет все значения из кэша.Исходники
CompressedTextureLoader
Абстрактный базовый класс для загрузчика блочных текстур (- поверхность непосредственного рисования')" onmouseout="hide()">dds,
компрессии графических данных с потерями,
с фиксированным уровнем сжатия.')" onmouseout="hide()">pvr, ...). Для загрузки файлов, внутри класса, используется FileLoader.
Примеры
Примеры производных классов смотрите в DDSLoader и PVRLoader.Конструктор
CompressedTextureLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый CompressedTextureLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.path
Базовый путь, по которому будут загружаться файлы. Смотрите описание метода setPath.
Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженная текстура.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и передает загруженную текстуру в функцию, определенную в аргументе onLoad.Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества моделей из одной и той же директории, он может быть пригодиться.
set path - установить путь')" onmouseout="hide()">.setPath( path )
Исходники
CubeTextureLoader
Класс для загрузки кубической текстуры. Для загрузки файлов, внутри класса, используется ImageLoader.Пример
var scene = new THREE.Scene();
scene.background = new THREE.CubeTextureLoader()
.setPath( 'textures/cubeMaps/' )
.load( [
'px.png',
'nx.png',
'py.png',
'ny.png',
'pz.png',
'nz.png'
] );
Другие примеры
WebGL / materials / cubemap WebGL / materials / cubemap / balls / reflection WebGL / materials / cubemap / balls / refraction WebGL / materials / cubemap / dynamic WebGL / materials / cubemap / dynamic2 WebGL / materials / cubemap / refraction
Конструктор
CubeTextureLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый CubeTextureLoader.Свойства
.crossOrigin
Если значение свойства установлено, то перед началом загрузки атрибуту изображения crossOrigin присваивается значение данного свойства crossOrigin.
Значением по умолчанию является undefined, т.е. значение не определено.Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.path
Базовый путь, из которого будут загружаться текстуры. Смотрите описание метода setPath. Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.
urls - множественное число от url, т.е. url-адреса')" onmouseout="hide()">urls, onLoad, onProgress, onError )
urls — массив из шести url-адресов к изображениям, по одному на каждую из сторон CubeTexture. URL-адреса должны указываться в следующем порядке:
- положительное значение по оси
координат x')" onmouseout="hide()">pos-x,
- отрицательное значение по оси
координат x')" onmouseout="hide()">neg-x,
- положительное значение по оси
координат y')" onmouseout="hide()">pos-y,
- отрицательное значение по оси
координат y')" onmouseout="hide()">neg-y,
- положительное значение по оси
координат z')" onmouseout="hide()">pos-z,
- отрицательное значение по оси
координат z')" onmouseout="hide()">neg-z. Также это может быть Data URI.
Обратите внимание что по соглашению, карты кубической текстуры задаются по системе координат, в которой положительное значение по оси x находится справа, если смотреть со стороны положительной оси z, - другими словами, используется левосторонняя система координат. Поскольку three.js использует правостороннюю систему координат, карты окружения, используемые в three.js, поменяют местами положительную и отрицательную оси координат x.
- положительное значение по оси
координат x')" onmouseout="hide()">pos-x,
- отрицательное значение по оси
координат x')" onmouseout="hide()">neg-x,
- положительное значение по оси
координат y')" onmouseout="hide()">pos-y,
- отрицательное значение по оси
координат y')" onmouseout="hide()">neg-y,
- положительное значение по оси
координат z')" onmouseout="hide()">pos-z,
- отрицательное значение по оси
координат z')" onmouseout="hide()">neg-z. Также это может быть Data URI.
Обратите внимание что по соглашению, карты кубической текстуры задаются по системе координат, в которой положительное значение по оси x находится справа, если смотреть со стороны положительной оси z, - другими словами, используется левосторонняя система координат. Поскольку three.js использует правостороннюю систему координат, карты окружения, используемые в three.js, поменяют местами положительную и отрицательную оси координат x.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженная текстура.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент urls) и передает загруженную текстуру в функцию, определенную в аргументе onLoad..setCrossOrigin( value )Устанавливает атрибут crossOrigin.
Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества текстур из одного и того же адреса, он может быть пригодиться.
set path - установить путь')" onmouseout="hide()">.setPath( path )
Исходники
DataTextureLoader
Абстрактный базовый класс для загрузки типовых двоичных форматов текстур (цвета RGB (на каждый цвет отводится
по одному байту) и канала показателя
степени (exponent) - также один байт')" onmouseout="hide()">rgbe,
широкодиапазонного представления цвета.')" onmouseout="hide()">hdr, ...). Для загрузки файлов, внутри класса используется FileLoader и создается новый объект DataTexture.
Примеры
Пример производного класса смотрите в RGBELoader.Конструктор
DataTextureLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создание нового DataTextureLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженная текстура.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и передает загруженную текстуру в функцию, определенную в аргументе onLoad.Исходники
FileLoader
Низкоуровневый класс для загрузки ресурсов с помощью XmlHttpRequest, используемый большинством загрузчиков.Пример
var loader = new THREE.FileLoader();
// load a text file and output the result to the console // загружаем текстовый файл и выводим результат в консоли loader.load( // resource URL (URL-адрес ресурса) 'example.txt',
// onLoad callback (функция обратного вызова, вызываемая по окончании загрузки) function ( data ) { // output the text to the console (вывод результата в консоль) console.log( data ) },
// onProgress callback (функция обратного вызова, вызываемая в процессе загрузки) function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); },
// onError callback (функция обратного вызова, вызываемая при ошибке) function ( err ) { console.error( 'Произошла ошибка' ); } );
Примечание: кэш должен быть включен с помощью
THREE.Cache.enabled = true;Это глобальное свойство и задается только один раз для использования всеми загрузчиками, которые внутри себя применяют FileLoader. Кэш это кэширующий модуль, который удерживает ответ от каждого запроса, сделанного через данный загрузчик, так что каждый файл запрашивается только однажды.
Другие примеры
WebGL / loader / msgpack WebGL / morphtargets / human
Конструктор
FileLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый FileLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
Internet Mail Extensions — многоцелевые расширения
интернет-почты) — стандарт, описывающий передачу
различных типов данных по электронной почте,
а также, в общем случае, спецификация для
кодирования информации и форматирования сообщений
таким образом, чтобы их можно было пересылать
по Интернету.')" onmouseout="hide()">.mimeType
Предполагаемый mimeType.
Смотрите описание метода setMimeType. Значением по умолчанию является undefined, т.е. значение не определено..path
Базовый путь к расположению, из которого будут загружаться файлы. Смотрите описание метода setPath.
Значением по умолчанию является undefined, т.е. значение не определено..requestHeader
Заголовок запроса, используемый в запросе HTTP. Смотрите описание метода setRequestHeader.
Значением по умолчанию является undefined, т.е. значение не определено..responseType
Предполагаемый тип ответа. Смотрите описание метода setResponseType.
Значением по умолчанию является undefined, т.е. значение не определено..withCredentials
Свойство определяет, использует ли XMLHttpRequest учетные данные. Смотрите описание метода setWithCredentials.
Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженный ответ.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и передает загруженный ответ в функцию, определенную в аргументе onLoad.Метод устанавливает предполагаемый тип MIME загружаемого файла. Обратите внимание, что во многих случаях он будет определяться автоматически, поэтому значением по умолчанию является undefined, т.е. не определено.
set mimetype - установить тип MIME')" onmouseout="hide()">.setMimeType(
Internet Mail Extensions — многоцелевые расширения
интернет-почты) — стандарт, описывающий передачу
различных типов данных по электронной почте,
а также, в общем случае, спецификация для
кодирования информации и форматирования сообщений
таким образом, чтобы их можно было пересылать
по Интернету.')" onmouseout="hide()">mimeType )
Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества файлов из одного и того же адреса, он может быть полезен.
set path - установить путь')" onmouseout="hide()">.setPath( path )
set request header - установить заголовок запроса')" onmouseout="hide()">.setRequestHeader( requestHeader )
requestHeader - состоит из двух частей
key (ключ): имя заголовка, значение которого нужно установить.
value (значение): значение, устанавливаемое в качестве тела заголовка.
Метод устанавливает заголовок запроса, используемый в HTTP запросе.key (ключ): имя заголовка, значение которого нужно установить.
value (значение): значение, устанавливаемое в качестве тела заголовка.
Вот статья Википедии о HTTP заголовках.
Метод изменяет тип ответа. Допустимые значения:
set response type - установить тип ответа')" onmouseout="hide()">.setResponseType( responseType )
text - текст')" onmouseout="hide()">text или пустая строка (значение по умолчанию) - возвращает данные как строковое значение.
array buffer - массив из буфера')" onmouseout="hide()">arraybuffer - загружает данные в ArrayBuffer и возвращает его.
blob - сокращ. англ. слов binary large object
- большой двоичный объект, объект BLOB')" onmouseout="hide()">blob - возвращает данные в виде Blob.
document - документ')" onmouseout="hide()">document - разбирает (делает синтаксический анализ) файл при помощи метода DOMParser.
json - сокращ. англ. слов JavaScript Object Notation,
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json - разбирает (делает синтаксический анализ) файл при помощи метода JSON.parse.
Метод устанавливает, будет ли XMLHttpRequest использовать учетные данные, такие как куки, заголовки авторизации или клиентские сертификаты TLS. Смотрите описание XMLHttpRequest.withCredentials.
set with credentials - установить с учетными данными')" onmouseout="hide()">.setWithCredentials( value )
Обратите внимание, что метод не действует, если файлы загружаются локально или из одного и того же домена.
Исходники
FontLoader
Класс для загрузки шрифта в JSON-формате. Возвращает Font, являющийся массивом форм, представляющих шрифт. Для загрузки файлов, внутри класса используется FileLoader.Конвертировать шрифты можно онлайн при помощи facetype.js.
Пример
var loader = new THREE.FontLoader(); var font = loader.load( // resource URL (URL-адрес ресурса) 'fonts/helvetiker_bold.typeface.json'
// onLoad callback (функция обратного вызова, вызываемая по окончании загрузки) function ( font ) { // do something with the font (здесь делаем что-либо с шрифтом) scene.add( font ); },
// onProgress callback (функция обратного вызова, вызываемая в процессе загрузки) function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); },
// onError callback (функция обратного вызова, вызываемая при ошибке) function ( err ) { console.log( 'Произошла ошибка' ); } );
Другие примеры
WebGL / geometry / text / shapes WebGL / geometry / text
Конструктор
FontLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый FontLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.path
Базовый путь к расположению, из которого будут загружаться шрифты. Смотрите описание метода setPath.
Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженный шрифт.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и передает загруженный шрифт в функцию, определенную в аргументе onLoad.
parse - разбор, структурный анализ')" onmouseout="hide()">.parse(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — разбираемая структура в формате JSON.
Метод разбирает (анализирует) структуру JSON и возвращает font - шрифт')" onmouseout="hide()">Font.
Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке нескольких шрифтов из одного и того же адреса, он может быть полезен.
set path - установить путь')" onmouseout="hide()">.setPath( path )
Исходники
ImageBitmapLoader
Загрузчик для загрузки изображения как ImageBitmap. ImageBitmap предоставляет асинхронный и эффективный, с точки зрения ресурсов, путь к подготовке текстур для отображения в WebGL.Пример
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.ImageBitmapLoader();
// load a image resource (загрузка ресурса) loader.load( // resource URL (URL-адрес ресурса) 'textures/skyboxsun25degtest.png',
// onLoad callback (функция обратного вызова, вызываемая по окончании загрузки) function ( imageBitmap ) { var texture = new THREE.CanvasTexture( imageBitmap ); var material = new THREE.MeshBasicMaterial( { map: texture } ); },
// onProgress callback currently not supported // функция обратного вызова, вызываемая в процессе загрузки, в настоящий момент не поддерживается undefined,
// onError callback (функция обратного вызова, вызываемая при ошибке) function ( err ) { console.log( 'Произошла ошибка' ); } );
Другие примеры
WebGL / loader / imagebitmap
Конструктор
ImageBitmapLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый ImageBitmapLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.options
Дополнительный, необязательный объект, который устанавливает опции для метода createImageBitmap, используемого внутри класса.
Значением по умолчанию является undefined, т.е. значение не определено..path
Базовый путь к расположению, из которого будут загружаться файлы. Смотрите описание метода setPath.
Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженное изображение.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет событие в ходе процесса загрузки.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и возвращает объект ImageBitmap, который будет содержать данные.Данный метод существует из соображений совместимости и не осуществляет никаких логических действий. Он обеспечивает чтобы у ImageBitmapLoader был точно такой же интерфейс, что и у ImageLoader.
set cross origin - установить перекрестный источник')" onmouseout="hide()">.setCrossOrigin( )
Устанавливает объект options для метода createImageBitmap.
set options - установить опции')" onmouseout="hide()">.setOptions( options )
Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества изображений из одного и того же адреса, он может быть полезен.
set path - установить путь')" onmouseout="hide()">.setPath( path )
Исходники
ImageLoader
Загрузчик для загрузки изображений. Для загрузки файлов, внутри класса используется FileLoader, а также данный загрузчик используется внутри CubeTextureLoader, ObjectLoader и TextureLoader.Пример
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.ImageLoader();Обратите внимание, что версия three.js r84 для ImageLoader прекратила поддержку событий на ход процесса (on progress). Для ImageLoader с поддержкой событий ход процесса, смотрите эту тему.
// load a image resource (загрузка ресурса) loader.load( // resource URL (URL-адрес ресурса) 'textures/skyboxsun25degtest.png',
// onLoad callback (функция обратного вызова, вызываемая по окончании загрузки) function ( image ) { // use the image, e.g. draw part of it on a canvas // используем изображение, например прорисовываем его часть на canvas (холсте) var canvas = document.createElement( 'canvas' ); var context = canvas.getContext( '2d' ); context.drawImage( image, 100, 100 ); },
// onProgress callback currently not supported // функция обратного вызова, вызываемая в процессе загрузки, в настоящий момент не поддерживается undefined,
// onError callback (функция обратного вызова, вызываемая при ошибке) function () { console.error( 'Произошла ошибка.' ); } );
Другие примеры
WebGL / loader / obj WebGL / shaders / ocean
Конструктор
ImageLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый ImageLoader.Свойства
.crossOrigin
Если значение свойства установлено, то перед началом загрузки атрибуту изображения crossOrigin присваивается значение данного свойства crossOrigin.
Значением по умолчанию является undefined, т.е. значение не определено.Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.path
Базовый путь к расположению, из которого будут загружаться файлы. Смотрите описание метода setPath.
Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженное изображение.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет событие в ходе процесса загрузки.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и возвращает объект Image, который будет содержать данные..setCrossOrigin( value )Метод устанавливает атрибут свойства crossOrigin.
Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества изображений из одного и того же адреса, он может быть полезен.
set path - установить путь')" onmouseout="hide()">.setPath( path )
Исходники
JSONLoader
Загрузчик для загрузки объектов в JSON формате. Для загрузки файлов, внутри класса используется FileLoader.Пример
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.JSONLoader();
// load a resource (загрузка ресурса) loader.load( // resource URL (URL-адрес ресурса) 'models/animated/monster/monster.js',
// onLoad callback (функция обратного вызова, вызываемая по окончании загрузки) function ( geometry, materials ) { var material = materials[ 0 ]; var object = new THREE.Mesh( geometry, material ); scene.add( object ); },
// onProgress callback (функция обратного вызова, вызываемая в процессе загрузки) function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); },
// onError callback (функция обратного вызова, вызываемая при ошибке) function( err ) { console.log( 'Произошла ошибка' ); } );
Другие примеры
WebGL / loader / json / blender WebGL / loader / json / objconverter
Конструктор
JSONLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый JSONLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.withCredentials
Свойство определяет, использует ли XMLHttpRequest учетные данные. Значением по умолчанию является false.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь к файлу или URL-адрес файла. Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженное изображение.
onProgress — функция, которая будет вызываться пока идет процесс загрузки. Аргументом будет загруженный объект JSON.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку из источника (аргумент url) и передает объект JSON функции, указанной в аргументе onLoad..setTexturePath( texturePath )Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества файлов из одного и того же адреса, он может быть полезен.
parse - разбор, структурный анализ')" onmouseout="hide()">.parse(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json, texturePath )
json — объект JSON для синтаксического анализа (обязательный аргумент).
texturePath — базовый путь к текстурам.
Анализирует (разбирает) JSON-структуру и возвращает объект, содержащий разобранные геометрические элементы и массив материалов.Исходники
Loader
Основной класс для реализации загрузчиков.Конструктор
Loader( )Создает новый Loader. Он будет вызываться как базовый класс.
Свойства
.onLoadStart
Функция будет вызываться при старте загрузки.Значением по умолчанию является
function идентификатор(параметры) {
инструкции
return выражение
} где имеется:ключевое слово function
идентификатор (обязательно)
список имён формальных параметров (и значений по
умолчанию) в круглых скобках разделенных запятыми
тело функции в фигурных скобках вида {}.')" onmouseout="hide()">функция с пустым телом.
.onLoadProgress
Функция будет вызываться в процессе загрузки.Значением по умолчанию является функция с пустым телом.
.onLoadComplete
Функция будет вызываться по завершению загрузки.Значением по умолчанию является функция с пустым телом.
.crossOrigin
Строковое значение crossOrigin для реализации
- совместное использование ресурсов между разными
источниками — технология современных браузеров, которая
позволяет предоставить веб-странице доступ к ресурсам
другого домена')" onmouseout="hide()">CORS для загрузки url-адреса с другого домена, который предоставляет CORS.
Методы
create material - создать материал')" onmouseout="hide()">.createMaterial( m, texturePath )
m — параметра для создания материала.
texturePath — базовый путь к текстурам.
Создает материал на основе параметров, переданных в аргументе m..initMaterials( materials, texturePath )
materials — массив параметров для создания материалов.
texturePath — базовый путь к текстурам.
Создает массив материалов на основе параметров, переданных в аргументе materials. Индекс параметров определяет правильный индекс материалов.Исходники
LoaderUtils
Объект с некоторыми вспомогательными, загрузочными функциями.Функции
.decodeText( array )
array — поток байтов как типизированный массив.
Функция в качестве входных данных принимает поток байтов и возвращает его строковое представление..extractUrlBase(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url )
url — url-адрес, из которого извлекается основная часть.
Извлекает базовую часть URL-адреса.Исходники
MaterialLoader
Загрузчик для загрузки Material в форматеобычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">JSON. Внутри себя для загрузки файлов он использует FileLoader.
Пример
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.MaterialLoader();
// load a resource (загружаем ресурс) loader.load( // resource URL (URL-адрес ресурса) 'путь/к/material.json',
// onLoad callback (функция обратного вызова на окончание загрузки) function ( material ) { object.material = material; },
// onProgress callback (функция обратного вызова в процессе загрузки) function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); },
// onError callback (функция обратного вызова на ошибки загрузки) function ( err ) { console.log( 'Произошла ошибка' ); } );
Конструктор
MaterialLoader(
manager - управляющий, администратор, менеджер')" onmouseout="hide()">manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый MaterialLoader.Свойства
Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является THREE.DefaultLoadingManager.
manager - управляющий, администратор, менеджер')" onmouseout="hide()">.manager
.textures
Объект, содержащий любые текстуры, используемые материалом. Смотрите описание метода setTextures.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь или URL-адрес к файлу. Также это может быть Data URI.
onLoad — функция, вызываемая по завершению загрузки. Её аргументом будет загруженный Material.
onProgress — функция, вызываемая во время процесса загрузки.
onError — функция, вызываемая при ошибках загрузки.
Метод начинает загрузку с указанного url-адреса (аргумент url) и возвращает объект Material, содержащий данные.
parse - разбор, синтаксический анализ')" onmouseout="hide()">.parse(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — объект в формате JSON, содержащий параметры материала.
Метод проводит синтаксический анализ (разбор) JSON-структуры и создает новый материал of the type [page:String json.type] с параметрами, определенными в объекте JSON..setTextures( textures )
textures — объект, содержащий любые текстуры, используемые материалом.
Исходники
ObjectLoader
Загрузчик для загрузки ресурсов в форматеобычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">JSON. В отличие от загрузчика JSONLoader, данный загрузчик использует атрибуты объектов this one make use of the .type attributes of objects для их сопоставления с их исходными классами.
Обратите внимание, данный загрузчик не загружает геометрические элементы. Вместо него используйте JSONLoader.
Внутри себя для загрузки файлов он использует FileLoader.
Пример
var loader = new THREE.ObjectLoader();
loader.load( // resource URL (URL-адрес ресурса) "models/json/example.json",
// onLoad callback (функция обратного вызова на окончание загрузки) // Here the loaded data is assumed to be an object // здесь предполагается, что загруженные данные являются объектом function ( obj ) { // Add the loaded object to the scene (добавляем загруженный объект на сцену) scene.add( obj ); },
// onProgress callback (функция обратного вызова в процессе загрузки) function ( xhr ) { console.log( (xhr.loaded / xhr.total * 100) + '% загружено' ); },
// onError callback (функция обратного вызова при ошибках загрузки) function ( err ) { console.error( 'Произошла ошибка' ); } );
// Alternatively, to parse a previously loaded JSON structure // Также можно проанализировать ранее загруженную JSON-структуру var object = loader.parse( a_json_object );
scene.add( object );
Другие примеры
WebGL / animation / scene WebGL / loader / json / claraio WebGL / loader / msgpack
Конструктор
ObjectLoader( manager )
manager — менеджер загрузки, используемый загручиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый ObjectLoader.Свойства
.crossOrigin
Если значение свойства установлено, то перед началом загрузки атрибуту изображения crossOrigin присваивается значение данного свойства crossOrigin.
Значением по умолчанию является undefined, т.е. значение не определено.Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является DefaultLoadingManager.
manager - менеджер, управляющий')" onmouseout="hide()">.manager
.texturePath
Базовый путь или URL-адрес, из которого будут загружаться текстуры. Смотрите описание метода setTexturePath. Значением по умолчанию является пустая строка.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь или URL-адрес к файлу. Также это может быть Data URI.
onLoad — функция, вызываемая по завершению загрузки. Её аргументом будет загруженный объект.
onProgress — функция, вызываемая во время процесса загрузки. Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, вызываемая при ошибках загрузки.
Метод начинает загрузку с указанного url-адреса (аргумент url) и вызывает функцию, переданную в onLoad, с разобранным содержимым ответа.
parse - разбор, синтаксический анализ')" onmouseout="hide()">.parse(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json, onLoad )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
onLoad — функция, вызываемая после завершения синтаксического анализа (разбора). Её аргументом будет разобранный объект.
Метод производит синтаксический анализ содержимого json и возвращает объект threejs.
Он используется внутри метода load, но также может использоваться напрямую для синтаксического анализа ранее загруженной JSON-структуры.
parse geometries - разбор, синтаксический
анализ геометрических элементов')" onmouseout="hide()">.parseGeometries(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
Данный метод использует метод parse для разбора любых геометрических элементов или буферных геометрических элементов в виде JSON-структуры.
Внутри себя он использует для геометрических элементов загрузчик JSONLoader,
а для буферных геометрических элементов используется загрузчик BufferGeometryLoader.
parse materials - разбор, синтаксический
анализ материалов')" onmouseout="hide()">.parseMaterials(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
Данный метод использует метод parse для разбора любых материалов в виде JSON-структуры, с помощью MaterialLoader.
parse animations - разбор, синтаксический
анализ анимаций')" onmouseout="hide()">.parseAnimations(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
Данный метод использует метод parse для разбора любых анимаций в виде JSON-структуры, с помощью AnimationClip.parse.
parse images - разбор, синтаксический
анализ изображений')" onmouseout="hide()">.parseImages(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
Данный метод использует метод parse для разбора любых объектов в виде JSON-структуры, с помощью ImageLoader.
parse textures - разбор, синтаксический
анализ текстур')" onmouseout="hide()">.parseTextures(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
Данный метод использует метод parse для разбора любых текстур в виде JSON-структуры.
parse object - разбор, синтаксический
анализ объекта')" onmouseout="hide()">.parseObject(
обычно произносится как /ˈdʒeɪsən/ JAY-sən)
— текстовый формат обмена данными, основанный
на JavaScript.')" onmouseout="hide()">json )
json — исходник JSON для синтаксического анализа (обязательный аргумент).
Данный метод использует метод parse для разбора любых объектов в виде JSON-структуры. Объекты могут быть следующих типов:
set cross origin - установить перекрестный источник')" onmouseout="hide()">.setCrossOrigin( value )
value — строковое значение crossOrigin для реализации
- совместное использование ресурсов между разными
источниками — технология современных браузеров, которая
позволяет предоставить веб-странице доступ к ресурсам
другого домена')" onmouseout="hide()">CORS для загрузки url-адреса с другого домена, который предоставляет CORS.
- совместное использование ресурсов между разными
источниками — технология современных браузеров, которая
позволяет предоставить веб-странице доступ к ресурсам
другого домена')" onmouseout="hide()">CORS для загрузки url-адреса с другого домена, который предоставляет CORS.
set texture path - установить путь к текстуре')" onmouseout="hide()">.setTexturePath( value )
value — базовый путь или URL-адрес, с которого будут загружаться текстуры.
Исходники
TextureLoader
Класс для загрузки текстуры. Он внутренне использует для загрузки файлов ImageLoader.Пример
var texture = new THREE.TextureLoader().load( 'textures/land_ocean_ice_cloud_2048.jpg' );
// immediately use the texture for material creation // сразу же используем текстуру для создания материала var material = new THREE.MeshBasicMaterial( { map: texture } );
Пример с функцией обратного вызова
// instantiate a loader (создаем экземпляр загрузчика) var loader = new THREE.TextureLoader();Обратите внимание, что версия three.js r84 для ImageLoader прекратила поддержку событий на ход процесса (on progress). Для TextureLoader с поддержкой событий ход процесса, смотрите эту тему.
// load a resource (загружаем ресурс) loader.load( // resource URL (URL-адрес ресурса 'textures/land_ocean_ice_cloud_2048.jpg',
// onLoad callback (функция обратного вызова на окончание загрузки) function ( texture ) { // in this example we create the material when the texture is loaded // в этом примере материал создается по окончании загрузки текстуры var material = new THREE.MeshBasicMaterial( { map: texture } ); },
// onProgress callback currently not supported // функция обратного вызова во время процесса в настоящее время не поддерживается) undefined,
// onError callback (функция обратного вызова при ошибке) function ( err ) { console.error( 'Произошла ошибка.' ); } );
Другие примеры
WebGL / geometry / cube
Конструктор
TextureLoader( manager )
manager — менеджер загрузки, используемый загрузчиком.
Значением по умолчанию является THREE.DefaultLoadingManager.
Создает новый TextureLoader.Свойства
.crossOrigin
Если значение свойства установлено, то перед началом загрузки атрибуту изображения crossOrigin присваивается значение данного свойства crossOrigin.
Значением по умолчанию является undefined, т.е. значение не определено.Менеджер загрузки, используемый загрузчиком. Значением по умолчанию является DefaultLoadingManager.
manager - менеджер, управляющий')" onmouseout="hide()">.manager
.path
Базовый путь, из которого будут загружаться текстуры. Смотрите описание метода setPath. Значением по умолчанию является undefined, т.е. значение не определено..withCredentials
Свойство определяет, использует ли XMLHttpRequest учетные данные. Смотрите описание метода setWithCredentials.
Значением по умолчанию является undefined, т.е. значение не определено.Методы
.load(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url, onLoad, onProgress, onError )
url — путь или URL к файлу (обязательный аргумент). Также это может быть Data URI.
onLoad — функция, которая будет вызвана по завершении загрузки. Аргументом будет загруженная текстура.
onProgress — функция, которая будет вызываться пока идет процесс загрузки.
Аргументом будет экземпляр XMLHttpRequest, что содержит сведения о загрузке total
и
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
размер загруженного ресурса')" onmouseout="hide()">loaded в байтах.
onError — функция, которая будет вызвана в случае ошибки при загрузке.
Метод начинает загрузку с указанного url-адреса (аргумент url) и передает загруженную текстуру функции, указанной в аргументе onLoad.
Также метод возвращает новый объект текстуры, который может быть использован непосредственно для создания материала.
Если это так и происходит, текстура может появиться на сцене после завершения соответствующего процесса загрузки..setCrossOrigin( value )Устанавливает атрибут crossOrigin.
Метод устанавливает базовый путь или URL-адрес, с которого загружаются файлы. При загрузке множества моделей из одного и того же адреса, он может быть пригодиться.
set path - установить путь')" onmouseout="hide()">.setPath( path )
Метод устанавливает, будет ли XMLHttpRequest использовать учетные данные, такие как куки, заголовки авторизации или клиентские сертификаты TLS. Смотрите описание XMLHttpRequest.withCredentials.
set with credentials - установить с учетными данными')" onmouseout="hide()">.setWithCredentials( value )
Обратите внимание, что метод не действует, если файлы загружаются локально или из одного и того же домена.
Исходники
Менеджеры загрузки
DefaultLoadingManager
Общий экземпляр LoadingManager, используемый большинством загрузчиков, когда не указывается отдельный, специализированный менеджер загрузки.В большинстве случаем его должно быть достаточно, однако иногда могут потребоваться отдельные менеджеры загрузки для текстур и моделей.
Пример
Для менеджера загрузки можно дополнительно устанавливать функции onStart, onLoad, onProgress, onError. Затем они будут применяться для любых загрузчиков, используемых DefaultLoadingManager.Обратите внимание, что не следует путать эти функции с функциями с такими же названиями отдельных, специализированных загрузчиков, поскольку они предназначены для отображения информации об общем состоянии загрузки, а не для обработки загружаемых данных.
THREE.DefaultLoadingManager.onStart = function ( url, itemsLoaded, itemsTotal ) {
console.log( 'Начата загрузка файлов: '+url+'.\nЗагружено '+itemsLoaded+' из '+itemsTotal+' файлов.' );
};
THREE.DefaultLoadingManager.onLoad = function ( ) {
console.log( 'Загрузка завершена!');
};
THREE.DefaultLoadingManager.onProgress = function ( url, itemsLoaded, itemsTotal ) {
console.log( 'Загрузка файлов: '+url+'.\nЗагружено '+itemsLoaded+' из '+itemsTotal+' файлов.' );
};
THREE.DefaultLoadingManager.onError = function ( url ) {
console.log( 'Произошла ошибка при загрузке '+url );
};
Другие примеры
WebGL / loader / scene
Свойства
Подробнее о свойствах смотрите в описании LoadingManager.Методы
Подробнее о методах смотрите в описании LoadingManager.Исходники
LoadingManager
Обрабатывает и отслеживает загружаемые и ожидающие загрузки данные. Если он не предоставлен вручную, то глобальный экземпляр данного класса создается и используется загрузчиками по умолчанию - смотрите DefaultLoadingManager.В принципе его должно быть достаточно, однако бывают случаи, когда полезно иметь раздельные загрузчики,- например если требуется показать отдельные индикаторы загрузки для объектов и текстур.
Пример
Этот пример показывает способ использования LoadingManager'а для отслеживания процесса работы загрузчика OBJLoader.var manager = new THREE.LoadingManager();
manager.onStart = function ( url, itemsLoaded, itemsTotal ) {
console.log( 'Начата загрузка файлов: '+url+'.\nЗагружено '+itemsLoaded+' из '+itemsTotal+' файлов.' );
};
manager.onLoad = function ( ) {
console.log( 'Загрузка завершена!');
};
manager.onProgress = function ( url, itemsLoaded, itemsTotal ) {
console.log( 'Загрузка файлов: '+url+'.\nЗагружено '+itemsLoaded+' из '+itemsTotal+' файлов.' );
};
manager.onError = function ( url ) {
console.log( 'Произошла ошибка при загрузке '+url );
};
var loader = new THREE.OBJLoader( manager );
loader.load( 'file.obj', function ( object ) {
//
} );
В дополнение к наблюдению за ходом процесса, LoadingManager можно использовать для переопределения во время загрузки URL-адресов ресурсов. Это может быть полезно для элементов, поступающих из событий перетаскивания, WebSockets, WebRTC или других API.Вот пример, показывающий как загрузить модель в память используя URL-адрес объекта Blob.
// Blob or File objects created when dragging files into the webpage.
// объекты Blob или File созданные при перетаскивании файлов на веб-страницу.
var blobs = {'fish.gltf': blob1, 'diffuse.png': blob2, 'normal.png': blob3};
var manager = new THREE.LoadingManager();
// Initialize loading manager with URL callback.
// инициализация менеджера загрузки с функцией обратного вызова для URL-адреса.
var objectURLs = [];
manager.setURLModifier( ( url ) => {
url = URL.createObjectURL( blobs[ url ] );
objectURLs.push( url );
return url;
} );
// Load as usual, then revoke the blob URLs.
// загружаем как обычно, затем отменяем URL-адреса blob.
var loader = new THREE.GLTFLoader( manager );
loader.load( 'fish.gltf', (gltf) => {
scene.add( gltf.scene );
objectURLs.forEach( ( url ) => URL.revokeObjectURL( url ) );
});
Другие примеры
WebGL / loader / babylon WebGL / loader / fbx WebGL / loader / obj WebGL / materials / reflectivity WebGL / postprocesing / outline WebGL / terrain / dynamic
Конструктор
LoadingManager( onLoad, onProgress, onError )
onLoad — эта функция будет вызываться по окончании работы всех загрузчиков. Дополнительный, необязательный аргумент.
onProgress — эта функция будет вызываться по завершении работы каждого отдельного элемента загрузки. Дополнительный, необязательный аргумент.
onError — эта функция будет вызываться при ошибках загрузчика. Дополнительный, необязательный аргумент.
Создает новый LoadingManager.Свойства
.onStart
Данная функция будет вызвана при запуске загрузки.Аргументами являются:
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url — url-адрес загружаемого элемента.
itemsLoaded — число элементов, уже загруженных в настоящее время.
itemsTotal — полное число загружаемых элементов.
По умолчанию она не определена, т.е. undefined..onLoad
Данная функция будет вызвана по завершении всех загрузок. По умолчанию она не определена (т.е. undefined), если не передается в конструкторе..onProgress
Данная функция будет вызвана по завершении загрузки элемента.Аргументами являются:
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url — url-адрес загруженного элемента.
itemsLoaded — число элементов, уже загруженных в настоящее время.
itemsTotal — полное число загружаемых элементов.
По умолчанию она не определена (т.е. undefined), если не передается в конструкторе..onError
Данная функция будет вызвана при ошибках с любым элементом. Аргументом функции является:
По умолчанию она не определена (т.е. undefined), если не передается в конструкторе.Методы
.setURLModifier( callback )
callback — функция обратного вызова модификатора url-адреса. Вызывается с url-адресом в качестве аргумента и должна возвращать урегулированный url-адрес.
Если аргумент предоставляется, то перед отправкой запроса функция обратного вызова будет переправлять каждый url-адрес ресурса.
Функция обратного вызова может возврашать либо исходный, либо новый url-адрес для переопределения поведения загрузки.
Такое поведение можно использовать для загрузки ресурсов из ZIP-файлов, при перетаскивании с применением API и Data URI..resolveURL(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url )
url — url-адрес загрузки.
Метод задает url-адрес с использованием функции обратного вызова модификатора URL-адреса (если таковая имеется) и возвращает урегулированный url-адрес. Если модификатор url-адреса не установлен, возвращается исходный url-адрес.Примечание: Следующие методы предназначены для внутреннего вызова загрузчиками, напрямую вызывать их нельзя.
.itemStart(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url )
url — url-адрес загрузки.
Данный метод будет вызываться любым загрузчиком, которого использует менеджер, при старте загрузки с url-адреса..itemEnd(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url )
url — url-адрес загрузки.
Данный метод будет вызываться любым загрузчиком, которого использует менеджер, по завершении загрузки с url-адреса..itemError(
(читается как /ˌjuː ɑːr ˈel/) —
единообразный локатор (определитель местонахождения)
ресурса или единый указатель ресурса.')" onmouseout="hide()">url )
url — url-адрес загрузки.
Данный метод будет вызываться любым загрузчиком, которого использует менеджер, когда происходит ошибка при загрузке с url-адреса.