移动光源照射贴图球体.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
移动光源照射贴图球体

计算机图形学 实验报告 实验三:移动光源照射贴图球体 学号: 姓名: 成绩: 东南大学计算机科学与工程系 实验目的 实现简单渲染,生成一个真实感三维物体,要求 允许用户指定光源位置,不要求生成阴影; 可以编辑,修改物体表面材质属性。 选择一幅图像,贴到物体表面 程序代码 建立光源和球体: void display(void) { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // 清楚颜色数据和深度数据(清屏) glColor3f(1.0,1.0,1.0); glLoadIdentity(); //初始变换矩阵为单位矩阵 glTranslated(0,-1,-5); //平移0,-1,-5向y负方向平移1个单位,负方向平移5个单位 glPushMatrix(); //压缩矩阵,设定光源的位置 glDisable(GL_LIGHTING); glRotatef(yRot, 0, 1, 0); //光源的旋转 glTranslatef(light_change[0],light_change[1],light_change[2]); //光源的位置 glTranslatef(light_position[0], light_position[1],light_position[2]); //光源位置 glDisable(GL_TEXTURE_2D); // 光源禁用贴图 glutSolidSphere(0.1, 4,4);//利用库函数绘制一个半径为0.1的球体。表示光源在这里 glEnable(GL_LIGHTING); glLightfv(GL_LIGHT0, GL_POSITION, light_position); glPopMatrix(); light_direction[0] = -light_change[0]; light_direction[1] = -light_change[1]; light_direction[2] = -light_change[2]; glLightfv(GL_LIGHT0, GL_SPOT_DIRECTION, light_direction); glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuseMaterial); glPopMatrix(); //光源设置完毕 glPushMatrix(); //压入变换矩阵那 glTexGeni(GL_S,GL_TEXTURE_GEN_MODE,GL_SPHERE_MAP); //增加纹理坐标自动生成及启用贴图功能 glTexGeni(GL_T,GL_TEXTURE_GEN_MODE,GL_SPHERE_MAP); glEnable(GL_TEXTURE_GEN_S); glEnable(GL_TEXTURE_GEN_T); glEnable(GL_TEXTURE_2D); glutSolidSphere(1, 50,50);//利用库函数绘制一个半径为1的球体。 glPopMatrix(); //弹出矩阵。 glutSwapBuffers(); //交换缓冲区。显示图形 } 改变材料属性: void mouse(int button, int state, int x, int y) //改变球体的材料属性 { switch (button) { case GLUT_LEFT_BUTTON: if (state == GLUT_DOWN) { diffuseMaterial[0] += 0.1; if (diffuseMaterial[0] 1.0) diffuseMaterial[0] = 0.0; glColor4fv(diffuseMaterial); glutPostRedisplay(); } break; case GLUT_MIDDLE_BUTTON:

文档评论(0)

word.ppt文档 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档