--- title: WebGLRenderingContext.activeTexture() slug: Web/API/WebGLRenderingContext/activeTexture translation_of: Web/API/WebGLRenderingContext/activeTexture ---
WebGLRenderingContext.activeTexture() метод WebGL API указывает какую текстуру сделать активной.
void gl.activeTexture(texture);
texturegl.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 выберет текстуру в качестве текущей. Последующие вызовы будут изменять эту текстуру.
gl.activeTexture(gl.TEXTURE1);
Количество текстур зависит от реализации, вы можете получить количество текстур с помощью константы MAX_COMBINED_TEXTURE_IMAGE_UNITS. Согласно спецификации не менее 8.
gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);
чтобы получить текущую активную текстуру вызовите gl.getParameter с константой ACTIVE_TEXTURE.
gl.activeTexture(gl.TEXTURE0); gl.getParameter(gl.ACTIVE_TEXTURE); // вернёт "33984" (0x84C0, gl.TEXTURE0 enum value)
{{Compat}}