材質的顏色

2021-08-27 12:57:40 字數 1087 閱讀 7185

在opengl的繪製中,我們一般會給繪製物體加上顏色,根據場景的不同,有幾下幾種方法:

1. 無光照

在無光照模型下,是最簡單的一種情形,在這種情況下,直接使用glcolor*函式來設定每個頂點的顏色,這種方法簡單直接。

2.有光照

在有光照的模型下,模型的顏色受以下幾方面的影響:光源的顏色屬性 ,以及通過glmaterial*()設定的材質的屬性。同時glcolor*()命令將失去作用。但是我們可以用glenable(gl_color_material)

如果呼叫了glenable(gl_color_material),那麼就會使光照模型中的幾種光根據glcolor*()中的指定確定顏色:void glcolormaterial(glenum face, glenum mode);其中face的取值gl_front, gl_back與gl_front_and_back(預設值)mode的取值為gl_emission, gl_ambient,gl_diffuse, gl_specular與gl_ambient_and_diffuse(預設值)

例如:

glenable(gl_color_material); 

glcolormaterial(gl_front, gl_diffuse);

/* now glcolor* changes diffuse reflection */

glcolor3f(0.2, 0.5, 0.8);

/* draw some objects here */

glcolormaterial(gl_front, gl_specular);

/* glcolor* no longer changes diffuse reflection */

/* now glcolor* changes specular reflection */

glcolor3f(0.9, 0.0, 0.2);

/* draw other objects here */

gldisable(gl_color_material);

RenderWare中修改模型的材質顏色

設定atomic為某種顏色 設定geometry標誌,flag rpgeometrytextured rpgeometrymodulatematerialcolor。然後設定每個metrial color為該顏色。注意geometry共用的情況。給geometry設定顏色和恢復的方法 設定顏色rpg...

Sandy引擎學習筆記 顏色材質

第二個問題 建立了乙個立方體後,怎樣為為這個立方體新增材質?首先最簡單的材質,我們會想到顏色,顏色是最容易理解。因此我們在這裡應該學會如何為我們的物體新增材質。package private function createscene group private function run event ...

學習OpenGL(五)顏色 光照與材質

學習opengl 五 顏色 光照與材質 kezunhai gmail.com 顏色 光照和材質是opengl的重要內容,其中glcolor函式設定當前的顏色,該函式之後繪製的所有頂點 圖形 都使用該顏色。對於乙個點,其顏色就是設定的顏色,而對於一條直線而言,如果兩個頂點的顏色不同,那麼兩點之間線的顏...