OpenGL中可见性检查函数-刘先章.doc

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

实 验 报 告 实验名称:OpenGL中可见性检查函数 实验目的: 1.在了解掌握了颜色原理、光照模型以及明暗处理的基础上,加深对OpenGL中可见性检查和消除不可见面的理解。 2.学习掌握利用OpenGL图形库实现可见性的设置。 实验地点:信息楼计算机中心CBT-1实验室 实验器材:计算机 实验步骤: 不进行面消隐的效果实现(程序框架) void main(int argc,char **argv) { glutInit(argc,argv); glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB|GLUT_DEPTH); glutInitWindowPosition(100,100); glutInitWindowSize(500,500); glutCreateWindow(刘先章); init(); glutDisplayFunc(myDisplay); glutReshapeFunc(reshape); glutMainLoop(); } 面消隐 初始化函数中如下加入代码: glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); 实验结果: OpenGL图形的二义性对比 学生姓名:刘先章 老师评语: 源代码: // opengl消隐技术.cpp : 定义控制台应用程序的入口点 #include stdafx.h int _tmain(int argc, _TCHAR* argv[]) { return 0; } #include windows.h #include glut.h GLfloat rtri; GLfloat rquad; int init() { glShadeModel(GL_SMOOTH); glClearColor(0.0f, 0.0f, 0.0f, 0.5f); glClearDepth(1.0f); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); glFlush(); return TRUE; } void reshape(GLsizei width, GLsizei height) { if (height==0) { height=1; } glViewport(0,0,width,height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(45.0f,(GLfloat)width/(GLfloat)height,0.7f,70.0f); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glFlush(); glutSwapBuffers(); } void myDisplay() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); rtri+=60.0f; rquad-=60.0f; glLoadIdentity(); glTranslatef(-0.5f,-0.8f,-6.0f); glRotatef(rtri,2.0f,-0.8f,0.0f); gluLookAt(0.6,0.6,0.6,0,0,-1,0,1,0); glBegin(GL_TRIANGLES); glColor3f(1.0f,0.0f,0.0f); glVertex3f( 0.0f, 1.0f, 0.0f); glColor3f(0.0f,1.0f,0.0f); glVertex3f(-1.0f,-1.0f, 1.0f); glColor3f(0.0f,0.0f,1.0f); glVertex3f( 1.0f,-1.0f, 1.0f); glColor3f(1.0f,0.0f,0.0f); glVertex3f( 0.0f, 1.0f, 0.0f); gl

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档