次の方法で共有


glTexEnviv 関数

glTexEnviv 関数は、テクスチャ環境パラメーターを設定します。

構文

void WINAPI glTexEnviv(
         GLenum target,
         GLenum pname,
   const GLint  *params
);

パラメーター

target

テクスチャ環境。 GL_TEXTURE_ENVする必要があります。

pname

単一値テクスチャ環境パラメーターのシンボリック名。 受け入れられる値はGL_TEXTURE_ENV_MODEされ、GL_TEXTURE_ENV_COLOR。

params

パラメーターの配列へのポインター。1 つのシンボリック定数または RGBA 色のいずれか。

戻り値

この関数は値を返しません。

エラー コード

glGetError 関数では、次のエラー コードを取得できます。

名前 意味
GL_INVALID_ENUM
target または pname は、受け入れ可能な定義値の 1 つではなかったか、 または params が定義された定数値 ( pname の値に基づく) を持っている必要があり、そうでない場合。
GL_INVALID_OPERATION
glBegin の呼び出しと glEnd の対応する呼び出しの間に関数が呼び出されました。

解説

テクスチャ環境では、フラグメントがテクスチャ化されるときにテクスチャ値がどのように解釈されるかを指定します。 ターゲット パラメーターはGL_TEXTURE_ENVする必要があります。 pname パラメーターには、GL_TEXTURE_ENV_MODEまたはGL_TEXTURE_ENV_COLORを指定できます。

pname がGL_TEXTURE_ENV_MODEの場合、params はテクスチャ関数のシンボリック名 (または を指す) になります。 GL_MODULATE、GL_DECAL、GL_BLENDの 3 つのテクスチャ関数が定義されています。

テクスチャ関数は、フラグメントに適用されるテクスチャ イメージ値を使用してテクスチャ化されるフラグメントに対して機能し ( glTexParameter を参照)、そのフラグメントの RGBA 色を生成します。 次の表は、選択できる 3 つのテクスチャ関数のそれぞれについて、RGBA の色がどのように生成されるかを示しています。 C はカラー値 (RGB) の 3 倍で、 A は関連付けられたアルファ値です。 テクスチャ イメージから抽出された RGBA 値は、[0, 1] の範囲内にあります。 添字 f は、受信フラグメントを参照し、下付き 文字 t をテクスチャ イメージに、下付き文字 c をテクスチャ環境の色に、添字 v はテクスチャ関数によって生成された値を示します。

テクスチャ イメージには、テクスチャ要素ごとに最大 4 つのコンポーネントを含めることができます ( glTexImage1DglTexImage2D を参照)。 1 つのコンポーネントイメージでは、Lt はその 1 つのコンポーネントを示します。 2 コンポーネントのイメージでは 、L?A? が使用されます。 3 つのコンポーネントイメージには、色の値 C ? しかありません。 4 成分の画像には、色の値 C? とアルファ値 A? の両方があります。

コンポーネントの数 GL_MODULATE GL_DECAL GL_BLEND
1${REMOVE}$
Cv = L。Cf undefined${REMOVE}$
Cv = (1 - L?)Cf + L?C c
a v = Af a v = Af
2${REMOVE}$
Cv = L。Cf undefined${REMOVE}$
Cv = (1 - L?)Cf + L?C c
a v = Af a v = Af
3${REMOVE}$
Cv = C。Cf Cv = C。 undefined${REMOVE}$
a v = Af a v = Af
4${REMOVE}$
Cv = C。Cf Cv = (1 - A?)Cf + A?C。 undefined${REMOVE}$
a v = A。Af a v = Af

pname がGL_TEXTURE_ENV_COLOR場合、 params は 4 つの値で構成される RGBA 色を保持する配列へのポインターです。 整数の色成分は、最も正の整数が 1.0 に、最も負の整数が -1.0 にマップされるように線形的に解釈されます。 値は、指定時に [0, 1] の範囲に固定されます。 C c は、これら 4 つの値を受け取ります。

GL_TEXTURE_ENV_MODEの既定値は GL_MODULATE、GL_TEXTURE_ENV_COLORの既定値は (0、0、0、0) です。

次の関数は、 glTexEnviv に関連する情報を取得します。

glTexGetEnviv

必要条件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Gl.h
ライブラリ
Opengl32.lib
[DLL]
Opengl32.dll

関連項目

glBegin

glEnd

glTexImage1D

glTexImage2D

glTexParameter