Создает текстуру непосредственно из исходных данных, ширины и высоты.
Аргумент data должен быть типа TypedArray. Свойства, унаследованные от Texture используются по умолчанию, кроме magFilter и minFilter, значения которых равны v3d.NearestFilter. Свойства flipY и generateMipmaps первоначально установлены в false.
Интерпретация данных зависит от типа и формата текстуры: для типа v3d.UnsignedByteType, будут использоваться данные Uint8Array. Если используется формат v3d.RGBAFormat, в данных должны располагаться 4 значения для одного текселя: для красного, зелёного, синего и альфа-канала (прозрачности).
Для упакованных типов v3d.UnsignedShort4444Type и v3d.UnsignedShort5551Type цветовые компоненты текселя адресуются как битовые поля целых элементов массива Uint16Array.
Для использования типов v3d.FloatType и v3d.HalfFloatType, WebGL реализация должна поддерживать расширения OES_texture_float и OES_texture_half_float. Для использования фильтра билинейной интерполяции текселей v3d.LinearFilter вам также потребуется иметь поддержку WebGL-расширений OES_texture_float_linear и OES_texture_half_float_linear.
// создаём буфер с цветами
const width = 512;
const height = 512;
const size = width * height;
const data = new Uint8Array(4 * size);
const color = new v3d.Color(0xffffff);
const r = Math.floor(color.r * 255);
const g = Math.floor(color.g * 255);
const b = Math.floor(color.b * 255);
for (let i = 0; i < size; i++) {
const stride = i * 4;
data[stride] = r;
data[stride + 1] = g;
data[stride + 2] = b;
data[stride + 3] = 255;
}
// используем буфер для создания DataTexture
const texture = new v3d.DataTexture(data, width, height);
texture.needsUpdate = true;
Общие свойства смотрите в базовом классе Texture.
Если установлено значение true, текстура переворачивается вдоль вертикальной оси при загрузке на GPU. По умолчанию false.
Нужно ли генерировать мипмапы (если это возможно) для текстуры. По умолчанию false.
Переопределяется объектом, содержащим данные, ширину и высоту.
Флаг, указывающий что данный объект является экземпляром DataTexture. Только для чтения.
1 по умолчанию. Определяет требования к выравниванию начала каждой строки пикселей в памяти. Допустимые значения: 1 (выравнивание по байтам), 2 (строки выравниваются по четным байтам), 4 (выравнивание по словам) и 8 (строки начинаются на границах двойных слов). Смотрите glPixelStorei для получения дополнительной информации.
Общие методы смотрите в базовом классе Texture.
О том как получить исходный код этого модуля читайте тут.