WebGLRenderingContext.activeTexture()

WebGLRenderingContext.activeTexture() метод WebGL API указывает какую текстуру сделать активной.

Синтаксис

void gl.activeTexture(texture);

Параметры

texture

Номер текстуры которую необходимо активировать. Значение gl.TEXTUREI где I значение в диапазоне от 0 до gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1.

Возвращаемое значение

None.

Исключения

Если texture не относится к gl.TEXTUREI, где I значение в диапазоне от 0 до gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1, то получаем исключение gl.INVALID_ENUM .

Примеры

Вызов со значением gl.TEXTURE1 выберет текстуру в качестве текущей. Последующие вызовы будут изменять эту текстуру.

js
gl.activeTexture(gl.TEXTURE1);

Количество текстур зависит от реализации, вы можете получить количество текстур с помощью константы MAX_COMBINED_TEXTURE_IMAGE_UNITS. Согласно спецификации не менее 8.

js
gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);

чтобы получить текущую активную текстуру вызовите gl.getParameter с константой ACTIVE_TEXTURE.

js
gl.activeTexture(gl.TEXTURE0);
gl.getParameter(gl.ACTIVE_TEXTURE);
// вернёт "33984" (0x84C0, gl.TEXTURE0 enum value)

Спецификация

Specification
WebGL Specification
# 5.14.3

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также