Share via


glFogfv 関数

glFogfv 関数は、霧パラメーターを指定します。

構文

void WINAPI glFogfv(
         GLenum  pname,
   const GLfloat *params
);

パラメーター

pname

霧パラメーターを指定します。

次のいずれかの値を受け入れます。

説明
GL_FOG_MODE
params パラメーターは、フォグ ブレンド係数 f の計算に使用する数式を指定する浮動小数点値です。 GL_LINEAR、GL_EXP、GL_EXP2の 3 つのシンボリック定数を使用できます。 これらのシンボリック定数に対応する数式は、次の「解説」セクションで定義します。 既定の霧モードはGL_EXPです。
GL_FOG_DENSITY
params パラメーターは、密度(両方の指数霧方程式で使用される霧密度)を指定する浮動小数点値です。 負でない密度のみが受け入れられます。 既定の霧密度は 1.0 です。
GL_FOG_START
params パラメーターは、線形霧の数式で使用される近距離である開始を指定する浮動小数点値です。 既定の近距離は 0.0 です。
GL_FOG_END
params パラメーターは、線形霧の数式で使用される遠距離である end を指定する浮動小数点値です。 既定の遠距離は 1.0 です。
GL_FOG_INDEX
params パラメーターは、i f 、霧の色インデックスを指定する浮動小数点値です。 既定のフォグ インデックスは 0.0 です。
GL_FOG_COLOR
params パラメーターには、Cf 、霧の色を指定する 4 つの浮動小数点値が含まれています。 整数値は、最も正の表現可能な値が 1.0 にマップされ、最も負の表現可能な値が -1.0 にマップされるように線形的にマップされます。 浮動小数点値は直接マップされます。 変換後、すべての色成分は[0,1]の範囲にクランプされます。 既定の霧の色は (0,0,0,0)です。

params

pname に割り当てる値を指定します。 GL_FOG_COLORには、4 つの値の配列が必要です。 その他のすべてのパラメーターは、1 つの値のみを含む配列を受け入れます。

戻り値

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

エラー コード

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

名前 意味
GL_INVALID_ENUM
pname は受け入れ可能な値ではありません。
GL_INVALID_OPERATION
glBegin の呼び出しと glEnd の対応する呼び出しの間に関数が呼び出されました。

解説

glEnableglDisable では、引数 GL_FOGを使用して、霧を有効または無効にします。 有効になっている間、霧はラスター化されたジオメトリ、ビットマップ、ピクセル ブロックに影響しますが、バッファークリア操作には影響しません。

glFogfv 関数は、pname で指定された fog パラメーターに params の値または値を割り当てます。

フォグは、ブレンド係数 f を使用して、ラスタライズされた各ピクセル フラグメントのポストテクスチャカラーと霧の色をブレンド します。 係数 f は、霧モードに応じて、3 つの方法のいずれかで計算されます。 z は、原点から霧が発生しているフラグメントまでの視線座標の距離になります。 GL_LINEAR霧の数式は次のとおりです。

霧の値を示す数式GL_LINEAR。

GL_EXP霧の数式は次のとおりです。

霧モードでのブレンド係数の値GL_EXP示す数式。

GL_EXP2霧の数式は次のとおりです。

霧モードでのブレンド係数の値GL_EXP2示す数式。

霧モードに関係なく、 f は計算後に範囲 [0,1] にクランプされます。 次に、OpenGL が RGBA カラー モードの場合、フラグメントの色 Cr は に置き換えられます。

フォグフラグメントの色をブレンド係数と霧の色の関数として示す数式。

カラー インデックス モードでは、フラグメントのカラー インデックス ir は に置き換えられます。

フォグフラグメントのカラーインデックスをブレンド係数とインデックス付き色の関数として示す数式。

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

引数GL_FOG_COLORを含む glGet

引数GL_FOG_INDEXを含む glGet

引数GL_FOG_DENSITYを含む glGet

引数GL_FOG_STARTを含む glGet

引数GL_FOG_ENDを含む glGet

引数GL_FOG_MODEを含む glGet

glIsEnabled と引数 GL_FOG

必要条件

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

関連項目

glBegin

glDisable

glEnable

glEnd

glGet

glIsEnabled