共用方式為


glGetMaterialiv 函式

glGetMaterialfvglGetMaterialiv函式會傳回材質參數。

語法

void WINAPI glGetMaterialiv(
   GLenum face,
   GLenum pname,
   GLint  *params
);

參數

指定要查詢兩個材質的哪一個。 接受GL_FRONT或GL_BACK,分別代表前和後方材質。

pname

要傳回的材質參數。 接受下列值。

意義
GL_AMBIENT
params參數會傳回四個整數或浮點值,代表材質的環境反射。 要求時,整數值會以線性方式從內部浮點表示對應,讓 1.0 對應到最正表示的整數值,而 -1.0 則對應到最負數的可表示整數值。 如果內部值超出範圍 [-1,1],則對應的整數傳回值是未定義的。
GL_DIFFUSE
params參數會傳回四個整數或浮點值,代表材質的擴散反射。 要求時,整數值會以線性方式從內部浮點表示對應,讓 1.0 對應到最正表示的整數值,而 -1.0 則對應到最負數的可表示整數值。 如果內部值超出範圍 [-1,1],則對應的整數傳回值是未定義的。
GL_SPECULAR
params參數會傳回四個整數或浮點值,代表材質的反射反射。 要求時,整數值會以線性方式從內部浮點表示對應,讓 1.0 對應到最正表示的整數值,而 -1.0 則對應到最負數的可表示整數值。 如果內部值超出範圍 [-1,1],則對應的整數傳回值是未定義的。
GL_EMISSION
params參數會傳回四個整數或浮點值,代表材質的發出光線強度。 要求時,整數值會以線性方式從內部浮點表示對應,讓 1.0 對應到最正表示的整數值,而 -1.0 則對應到最負數的可表示整數值。 如果內部值超出範圍 [-1,1],則對應的整數傳回值是未定義的。
GL_SHININESS
params參數會傳回一個整數或浮點值,代表材質的反射指數。 當要求時,整數值會透過將內部浮點值四捨五入到最接近的整數值來計算。
GL_COLOR_INDEXES
params參數會傳回三個整數或浮點值,代表材質的環境、擴散和反射索引。 只針對色彩索引光源使用這些索引。 (其他參數全都用於 RGBA 光源。) 要求時,會藉由將內部浮點值四捨五入到最接近的整數值來計算。

params

傳回要求的資料。

傳回值

此函式不會傳回值。

錯誤碼

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

名稱 意義
GL_INVALID_ENUM
目標查詢 不是可接受的值。
GL_INVALID_OPERATION
函式是在 對 glBegin 的呼叫和 glEnd的對應呼叫之間呼叫。

備註

glGetMaterial函式會在參數中傳回材質臉部參數 pname的值或值。

如果產生錯誤,則 不會變更參數的內容。

規格需求

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

另請參閱

glBegin

glEnd

glMaterial