在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函式設定當前的顏色,該函式之後繪製的所有頂點 圖形 都使用該顏色。對於乙個點,其顏色就是設定的顏色,而對於一條直線而言,如果兩個頂點的顏色不同,那麼兩點之間線的顏...