WebGLRenderingContext: activeTexture() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

WebGLRenderingContext.activeTexture()WebGL API のメソッドで、どのテクスチャユニットをアクティブにするかを指定します。

構文

js
activeTexture(texture)

引数

texture

アクティブにするテクスチャユニット。値は gl.TEXTUREI で、 I は 0 から gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1 の範囲内です。

返値

なし (undefined)。

例外

texturegl.TEXTUREI の 1 つでない場合、すなわち 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);

アクティブなテクスチャを取得するには、定数 ACTIVE_TEXTURE を問い合わせます。

js
gl.activeTexture(gl.TEXTURE0);
gl.getParameter(gl.ACTIVE_TEXTURE);
// "33984" を返す(0x84C0、gl.TEXTURE0 列挙値)

仕様書

Specification
WebGL Specification
# 5.14.3

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
activeTexture

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

関連情報