OpenGL项目:绘制简单场景.doc

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

计算机图形学报告 (项目一) 专业:计算机科学与技术 姓名: 学号: 班级: 目录 1.引言 1 1.1编写目的 1 1.2项目背景 1 2.开发结果 2 2.1开发环境 2 2.2主要功能及性能 2 2.3场景介绍 2 2.4操作介绍 2 2.5灯光介绍 2 3.总结 3 4.参考文献 3 5.代码 3 1.引言 1.1编写目的 利用OpenGL绘制一个简单的场景 – 包含球、正方形、网格数据 – 交互操作:平移、缩放、旋转 – 可以使用不同的灯光 1.2项目背景 openGL编程在计算机图形学中具有非常重要的作用,是实现计算机图形的一个重要工 具,通过openGL编程,我们能更好的学习计算机图形学,同时也能提高我们自己的实际动手能力。 2.开发结果 2.1开发环境 Windows7旗舰版 Vs2012 2.2主要功能及性能 利用OpenGL绘制一个简单的场景 – 包含球、正方形、网格数据 – 交互操作:平移、缩放、旋转 – 可以使用不同的灯光 2.3场景介绍 绘制一个简单的场景,包含球、正方形、网格数据。如图: 2.4操作介绍 利用上下左右方向键进行上下左右移动,如图: 利用home,end,pgup,insertj进行上下左右的旋转,如图: 2.5灯光介绍 包括三中灯光:环境光,漫射光,平面光 利用鼠标右键进行灯光选择: 漫射光如图: 总结 参考文献 1、OpenGL超级宝典 2、博客:vs2012中OpenGL配置 3、计算机图像学基础 5.代码 // DiffuseLight.cpp // OpenGL SuperBible // Demonstrates simple diffuse lighting // Program by Richard S. Wright Jr. #include GLTools.h // OpenGL toolkit #include GLMatrixStack.h #include GLFrame.h #include GLFrustum.h #include GLGeometryTransform.h #include StopWatch.h #include math.h #ifdef __APPLE__ #include glut/glut.h #else #define FREEGLUT_STATIC #include GL/glut.h #endif GLFrame viewFrame; GLFrustum viewFrustum; GLTriangleBatch sphereBatch; //GLBatch sphereBatch; GLMatrixStack modelViewMatrix; GLMatrixStack projectionMatrix; GLGeometryTransform transformPipeline; GLShaderManager shaderManager; GLuint ADSLightShader; GLint locAmbient; GLint locDiffuse; GLint locSpecular; GLint locLight; GLint locMVP; GLint locMV; GLint locNM; GLint lightOnOff = 0; //points static const float vertex_list[][3] = { -0.5f, -1.5f, -0.5f, 0.5f, -1.5f, -0.5f, 0.5f, -0.5f, -0.5f, -0.5f, -0.5f, -0.5f, -0.5f, -1.5f, 0.5f, 0.5f, -1.5f, 0.5f, 0.5f, -0.5f, 0.5f, -0.5f, -0.5f, 0.5f, }; //points connect static const GLint index_list[][4] = { {0, 1, 2, 3}, {3, 2, 6, 7}, {4, 5, 6, 7}, {0, 1, 5, 4}, {1, 5, 6, 2}, {0, 4, 7, 3} }; // draw cube void DrawCube(void) { in

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档