WebGLRenderingContext: activeTexture() メソッド
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2015年7月以降、すべてのブラウザーで利用可能です。
WebGLRenderingContext.activeTexture() は WebGL API のメソッドで、どのテクスチャユニットをアクティブにするかを指定します。
構文
js
activeTexture(texture)
引数
texture-
アクティブにするテクスチャユニット。値は
gl.TEXTUREIで、 I は 0 からgl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1の範囲内です。
返値
なし (undefined)。
例外
texture が gl.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 列挙値)
仕様書
| 仕様書 |
|---|
| WebGL Specification> # 5.14.3> |