各位帮忙看一下,为什么我加了glEnable(GL_LIGHTING);后就什么都不显示了?一片漆黑?

john1980 2002-04-30 08:40:35
glEnable(GL_TEXTURE_2D); // Enable Texture Mapping
glShadeModel(GL_SMOOTH); // Enable Smooth Shading
glClearColor(0.0f, 0.0f, 0.0f, 0.5f); // Black Background
glClearDepth(1.0f); // Depth Buffer Setup
glEnable(GL_DEPTH_TEST); // Enables Depth Testing
glDepthFunc(GL_LEQUAL); // The Type Of Depth Testing To Do
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Really Nice Perspective Calculations
// glEnable(GL_LIGHTING);


GLfloat light1_ambient[4] = {0.2,0.6,0.2,1} ;
GLfloat light1_diffuse[4] = { 0.5, 0.5, 0.2, 1.0 };
GLfloat light1_specular[4] = { 0.9, 0.9, 0.9, 1.0 };
GLfloat light1_position[4] = {-3.0, 60.0,3.0, 1.0} ;
GLfloat light1_spotdirection[3] = {0.0 , 0.0, -1.0} ;
GLfloat light1_spotcutoff = 45.0;
GLfloat light1_spotexponent = 0;

glLightfv(GL_LIGHT1,GL_POSITION,light1_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_SPOT_DIRECTION,light1_spotdirection);
glLightf(GL_LIGHT1,GL_SPOT_EXPONENT,light1_spotexponent);
glLightf(GL_LIGHT1,GL_SPOT_CUTOFF,light1_spotcutoff);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT1);

GLfloat m_Ambient[4];
GLfloat m_Diffuse[4];
GLfloat m_Specular[4];
GLfloat m_Emission[4];
GLfloat m_fShininess;


m_Ambient[0]=0.24725;m_Ambient[1]=0.2245;
m_Ambient[2]=0.0645;m_Ambient[3]=1.0;
m_Diffuse[0]=0.34615;m_Diffuse[1]=0.3143;
m_Diffuse[2]=0.0903;m_Diffuse[3]=1.0;
m_Specular[0]=0.797357;m_Specular[1]=0.723991;
m_Specular[2]=0.208006;m_Specular[3]=1.0;
m_fShininess=83.2;

glMaterialfv(GL_FRONT,GL_AMBIENT,m_Ambient);
glMaterialfv(GL_FRONT,GL_DIFFUSE,m_Diffuse);
glMaterialfv(GL_FRONT,GL_SPECULAR,m_Specular);
glMaterialfv(GL_FRONT,GL_EMISSION,m_Emission);
glMaterialfv(GL_FRONT,GL_SHININESS,&m_fShininess);
...全文
672 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
john1980 2002-04-30
  • 打赏
  • 举报
回复
glMaterialfv(GL_FRONT,GL_EMISSION,m_Emission);

加了这个语句后就什么都看不见了?
为什么?
m_Emission 得知我试过好多中都不行
john1980 2002-04-30
  • 打赏
  • 举报
回复
设置了
我不写
glEnable(GL_LIGHT1);
时用默然光源可以看到物体
加了material后就什么都 看不见了
chenlee 2002-04-30
  • 打赏
  • 举报
回复
没有给顶点设置法向量?

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧