glMateriali 函式

glMateriali函式會指定光源模型的材質參數。

語法

void WINAPI glMateriali(
   GLenum face,
   GLenum pname,
   GLint  param
);

參數

正在更新的臉部或臉部。 必須是下列其中一項:GL_FRONT、GL_BACK或GL_FRONT和GL_BACK。

pname

正在更新之臉部或臉部的單一值材質參數。 必須是GL_SHININESS。

意義
GL_SHININESS
param參數是單一整數,指定材質的 RGBA 反射指數。 整數值會直接對應。 只接受範圍 [0, 128] 中的值。 正面和反向材質的預設反射指數為 0。

param

將設定參數GL_SHININESS的值。

傳回值

此函式不會傳回值。

錯誤碼

glGetError函式可以擷取下列錯誤碼。

名稱 意義
GL_INVALID_ENUM
臉部pname不是可接受的值。
GL_INVALID_VALUE
指定了超出 [0, 128] 範圍的反射指數。

備註

glMateriali函式會將值指派給材質參數。 有兩組相符的材質參數。 其中一個 是前端 集合,用於在啟用雙面光源時 (著色點、線條、點陣圖和所有多邊形 (,或只) 啟用雙) 面光源時 (的正面多邊形。 唯有啟用雙面光源時,才會使用另一組 反向多邊形來著色反向多邊形。 如需有關一面和雙面光源計算的詳細資訊,請參閱 glLightModel

glMateriali函式會採用三個引數。 第一個 臉部會指定是否要修改GL_FRONT材質、GL_BACK材質或兩個GL_FRONT_AND_BACK材質。 第二個 pname會指定要修改一或兩個集合中數個參數的哪一個。 第三 個 參數會指定將指派給指定參數的值。

材質參數用於選擇性套用至每個頂點的光源方程式。 此方程式會在 glLightModel中討論。

材質參數可以隨時更新。 特別是 ,glMateriali 可以在 glBegin 的呼叫與 glEnd的對應呼叫之間呼叫。 不過,如果每個頂點只能變更單一材質參數, 則 glColorMaterial 會優先于 glMateriali

下列函式會擷取 glMateriali的相關資訊:

glGetMaterial

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Gl.h
程式庫
Opengl32.lib
DLL
Opengl32.dll

另請參閱

glColorMaterial

glLight

glLightModel