xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 809KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-21
  • 語言: 其他
  • 標簽:

資源簡介

本代碼是用OPENGL實現光線跟蹤算法,從影響光照效果的因素著手,主要演示了靜態多光源,材料屬性,動態多光源三個方面。

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?
//靜態多光源部分
void?init(void)
{
?glShadeModel?(GL_SMOOTH);
?glClearColor?(0.2?0.2?0.2?1.0);
?????//材料屬性值設置
?????GLfloat?mat_specular[]?=?{?1.0?1.0?1.0?1.0?};
?????GLfloat?mat_shininess[]?=?{?50.0?};
?????//glMaterialfv的調用
?glMaterialfv(GL_FRONT?GL_SPECULAR?mat_specular);
?????glMaterialfv(GL_FRONT?GL_SHININESS?mat_shininess);
?????//環境光,散射光和鏡面光參數
?GLfloat?light_ambient[]?=?{?0.0?0.0?1.0?1.0?};
?????GLfloat?light_diffuse[]?=?{?1.0?1.0?1.0?1.0?};
?????GLfloat?light_specular[]?=?{?1.0?1.0?1.0?1.0?};
?GLfloat?light_position[]?=?{?1.0?1.0?1.0?0.0?};

?GLfloat?light1_ambient[]?=?{?1.0?0.0?0.0?1.0?};
?????GLfloat?light1_diffuse[]?=?{?1.0?0.0?0.0?1.0?};
?????GLfloat?light1_specular[]?=?{?1.0?1.0?1.0?1.0?};
?????GLfloat?light1_position[]?=?{?0.0?2.0?2.0?1.0?};
?????//衰減因子
?glLightf(GL_LIGHT0?GL_CONSTANT_ATTENUATION?2.0);
?????glLightf(GL_LIGHT0?GL_LINEAR_ATTENUATION?1.0);
?????glLightf(GL_LIGHT0?GL_QUADRATIC_ATTENUATION?0.5);

?glLightf(GL_LIGHT1?GL_CONSTANT_ATTENUATION?1.5);
?????glLightf(GL_LIGHT1?GL_LINEAR_ATTENUATION?0.5);
?????glLightf(GL_LIGHT1?GL_QUADRATIC_ATTENUATION?0.2);
?//LIGHT1聚光燈參數
?????GLfloat?spot_direction[]?=?{?1.0?-1.0?-1.0?};
?glLightf(GL_LIGHT1?GL_SPOT_CUTOFF?45.0);
?????//glLightfv的調用
?glLightfv(GL_LIGHT0?GL_AMBIENT?light_ambient);
?????glLightfv(GL_LIGHT0?GL_DIFFUSE?light_diffuse);
?????glLightfv(GL_LIGHT0?GL_SPECULAR?light_specular);
?????glLightfv(GL_LIGHT0?GL_POSITION?light_position);

?glLightfv(GL_LIGHT1?GL_AMBIENT?light1_ambient);
?????glLightfv(GL_LIGHT1?GL_DIFFUSE?light1_diffuse);
?????glLightfv(GL_LIGHT1?GL_SPECULAR?light1_specular);
?????glLightfv(GL_LIGHT1?GL_POSITION?light1_position);

?glLightfv(GL_LIGHT1?GL_SPOT_DIRECTION?spot_direction);
?????glLightf(GL_LIGHT1?GL_SPOT_EXPONENT?5.0);
?//觀察點設置
?glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER?GL_FALSE);
?????//glEnable的調用
?????glEnable(GL_DEPTH_TEST);
?????glEnable(GL_LIGHTING);
?????glEnable(GL_LIGHT0);
?glEnable(GL_LIGHT1);
}
void?display(void)
{
?????glClear?(GL_COLOR_BUFFER_BIT?|?GL_DEPTH_BUFFER_BIT);
?????glutSolidSphere?(1.0?20?16);
?????glFlush?();
}

//材料部分
void?init2(void)
{
?glShadeModel?(GL_SMOOTH);
?glClearColor?(0.2?0.2?0.2?1.0);
?glClear(GL_COLOR_BUFFER_BIT?|?GL_DEPTH_BUFFER_BIT);
?????
?????//環境光,散射光和鏡面光參數
?GLfloat?light_ambient[]?=?{?0.0?0.0?1.0?1.0?};
?????GLfloat?light_diffuse[]?=?{?1.0?1.0?1.0?1.0?};
?????GLfloat?light_specular[]?=?{?1.0?1.0?1.0?1.0?};
?GLfloat?light_position[]?=?{?1.0?1.0?1.0?0.0?};
?????//glLightfv的調用
?glLightfv(GL_LIGHT0?GL_AMBIENT?light_ambient);
?????glLightfv(GL_LIGHT0?GL_DIFFUSE?light_diffuse);
?????glLightfv(GL_LIGHT0?GL_SPECULAR?light_specular);
?????glLightfv(GL_LIGHT0?GL_POSITION?light_position);
?//觀察點設置
?glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER?GL_FALS

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????8130??2008-12-23?12:04??用OPENGL實現光線跟蹤算法\光線跟蹤.cpp

?????文件????1208832??2009-03-25?17:52??用OPENGL實現光線跟蹤算法\光線跟蹤算法.ppt

?????文件?????242688??2008-12-23?11:59??用OPENGL實現光線跟蹤算法\圖形學實驗說明及效果展示.doc

?????目錄??????????0??2009-03-25?17:52??用OPENGL實現光線跟蹤算法

-----------?---------??----------?-----??----

??????????????1459650????????????????????4


評論

共有 條評論

相關資源