次の方法で共有


glShadeModel 関数

glShadeModel 関数は、平らな網かけまたは滑らかな網かけを選択します。

構文

void WINAPI glShadeModel(
   GLenum mode
);

パラメーター

mode

網かけの手法を表すシンボル値。 受け入れられる値はGL_FLATされ、GL_SMOOTHされます。 既定値は GL_SMOOTH です。

戻り値

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

エラー コード

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

Name 意味
GL_INVALID_ENUM
mode は、GL_GLATまたはGL_SMOOTH以外の値でした。
GL_INVALID_OPERATION
この関数は、 glBegin の呼び出しと glEnd の対応する呼び出しの間で呼び出されました。

注釈

OpenGL プリミティブには、平らな網かけまたは滑らかな網かけを使用できます。 既定のスムーズ シェーディングでは、プリミティブがラスター化されると、計算された頂点の色が補間され、通常、結果として得られる各ピクセル フラグメントに異なる色が割り当てられます。 フラット シェーディングでは、計算された 1 つの頂点の色が選択され、1 つのプリミティブをラスター化することによって生成されたすべてのピクセル フラグメントに割り当てられます。 どちらの場合も、頂点の計算された色は、照明が有効になっている場合は照明の結果、または照明が無効になっている場合は頂点が指定された時点の現在の色になります。

フラットで滑らかな網かけは、ポイントに対して区別できません。 glBegin が発行された時点から頂点とプリミティブをカウントすると、各フラット シェーディングされた線分 i には、2 番目の頂点である頂点 i + 1 の計算された色が指定されます。 同様に 1 からカウントすると、各フラット シェーディングポリゴンには、次の表に示す頂点の計算された色が与えられます。 これは、1 つのポリゴンを除くすべてのケースでポリゴンを指定する最後の頂点であり、最初の頂点はフラット シェーディングカラーを指定します。

ポリゴン i のプリミティブ型 Vertex
単一ポリゴン (I=1) 1
三角形のストリップ i + 2
三角形ファン i + 2
独立三角形 3I
四角形ストリップ 2i + 2
独立したクワッド 4I

フラットおよびスムーズ シェーディングは glShadeModel によって指定され、 モード はそれぞれ GL_FLAT と GL_SMOOTH に設定されます。

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

glGet と引数 GL_SHADE_MODEL

要件

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

こちらもご覧ください

glBegin

glColor

glEnd

glLight

glLightModel