opengl中文教程 opengl-3-视口和绘制函数

opengl中文教程 opengl-3-视口和绘制函数

ID:12869794

大小:208.50 KB

页数:5页

时间:2018-07-19

opengl中文教程 opengl-3-视口和绘制函数_第1页
opengl中文教程 opengl-3-视口和绘制函数_第2页
opengl中文教程 opengl-3-视口和绘制函数_第3页
opengl中文教程 opengl-3-视口和绘制函数_第4页
opengl中文教程 opengl-3-视口和绘制函数_第5页
资源描述:

《opengl中文教程 opengl-3-视口和绘制函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、2、设置视口和重载你的绘制函数NeHeSDK是把Nehe的教程中所介绍的所有功能,以面向对象的形式,提供给编程人员快速开发的一套编程接口。在下面的教程中,我将按NeHeSDK源码的功能分类,一步一步把这套api介绍给大家。如果你觉得有更好的学习方法,或者有其他有益的建议,请联系我。zhouwei02@mails.tsinghua.edu.cn,zhouwei506@mails.gucas.ac.cn程序结构:我们在第一课程序的基础上添加一下功能:1.创建一个全局的视口类,控制场景中可见的范围2.创建初始化函数,用来完成绘制的初始化工作1.创建一个绘制三棱锥的函数2.设置默认的视口棱台体3.重栽

2、我们的绘制函数,这里将绘制一个简单的三棱锥为了使用视口类,我们需要包含下面的头文件(view.h),并声明一个全局的视口变量view。/*************************************新增的代码:包含视口类的声明********************/#include"view.h"//包含视口类的声明/**********************************新增的代码:包含视口类的声明:结束******************//*************************************新增的代码:创建View类************

3、****************/Viewview;//创建视口类/**********************************新增的代码:创建View类:结束**************************/接着创建一个新的cpp文件,用来重栽我们的绘制函数。这里我把它命名为Draw.cpp为了使用OpenGL类和View类,我们需要包含头文件opengl.h和view.h。为了方便起见,我们启用NeHe名字空间。接着我们使用extern关键字来使用全局变量view,最后我们创建一个变量initialize来记录是否需要初始化。整个代码如下:#include"opengl.h"/

4、/包含创建OpenGL程序的框架类#include"view.h"//包含视口类的声明#pragmacomment(lib,"NeheSDK.lib")//包含NeheSDK.lib库usingnamespaceNeHe;//使用NeHe名字空间externViewview;//使用全局变量view类staticboolinitialize=true;//记录是否初始化2、设置初始化函数这里我创建一个空的初始化函数,以方便以后的使用/******************************************************初始化场景**********************

5、*****************************************************/voidIniScene(OpenGL*gl,ControlData*cont){}/****************************************************初始化场景:结束************************************************************************/3、创建一个绘制三棱锥的函数我们使用标准的OpenGL代码创建这个函数/**********************************

6、********************绘制三棱锥***************************************************************************///绘制三棱锥voidDrawTri(void){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

7、.0f,1.0f);glColor3f(1.0f,0.0f,0.0f);glVertex3f(0.0f,1.0f,0.0f);glColor3f(0.0f,0.0f,1.0f);glVertex3f(1.0f,-1.0f,1.0f);glColor3f(0.0f,1.0f,0.0f);glVertex3f(1.0f,-1.0f,-1.0f);glColor3f(1.0f,0.0f,0.0f);gl

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。