OpenGL室内三维环境(北邮计算机图形学作业)

合集下载

计算机图形学上机实验报告

计算机图形学上机实验报告

计算机图形学实验报告姓名:学号:班级:目录实验一OpenGL程序结构练习 (3)实验二基本图形生成 (6)实验三交互式控制 (9)实验四图形基本变换 (12)实验五三维图形生成及显示 (15)实验六三维图形生成及显示 (19)实验一OpenGL程序结构练习【实验目的】1.熟悉C语言环境下OpenGL的使用方法;2.了解OpenGL程序的基本结构。

【实验原理】绝大多数OpenGL程序具有类似的结构,包含下述函数main():定义回调函数,打开一个或多个具有指定属性的窗口,进入事件循环(最后一条可执行语句)init():设置状态变量、视图、属性、回调、显示函数、输入和窗口函数#include <GL/glut.h> // glut.h includes gl.h and glu.hvoid display(){ ……}void init(){ ……}int main( intargc, char **argv){ ……}【实验内容】1.了解程序中各个结构的功能;2.用OpenGL生成三角形。

【实验步骤及结果】1.导入OpenGL的glut32.lib和glut.h文件:将.lib文件存放到C 语言程序文件夹的Library下,.h文件放到Include下;导入应用程序扩展文件glut32.dll,存放到system文件夹下。

2.打开VC 6.0,新建工程,并命名为text1,如图1.图 13.在工程text1下新建源文件,并命名为text1.cpp。

4.编写代码并编译链接,如图2所示。

图 25.运行,结果如图3所示。

图 3实验二基本图形生成【实验目的】1.熟悉OpenGL的程序结构,并了解各部分的功能。

2.学会应用OpenGL语言绘制出点,线,多边形。

【实验原理】1.GLUT函数glutInit使得应用程序可以获取命令行参数并初始化系统。

glutInitDisplayMode设置窗口的属性、RGB颜色、单缓冲区、属性按照逻辑或组合在一起。

基于OpenGL的三维图形绘制实验

基于OpenGL的三维图形绘制实验

基于OpenGL的三维图形绘制实验基于OpenGL的三维图形绘制实验⽬录实验题⽬:交互图形程序设计基础实验 (3)1.实验⽬的 (3)2.实验内容 (3)2.1 实验内容 (3)2.2 实验任务 (3)3.实验过程 (4)3.1 预处理 (4)3.3 主要函数说明 (5)3.4 过程描述 (6)3.5 运⾏截图 (7)4.实验结果 (7)5.实验体会 (7)实验题⽬:交互图形程序设计基础实验1.实验⽬的1)理解并掌握三维基本图形数据结构表⽰⽅法。

2)掌握编写OpenGL图形程序的基本⽅法.3)掌握OpenGL基本图形表⽰及绘制。

2.实验内容2.1 实验内容基于OpenGL的三维图形绘制实验⽬的是掌握图形信息的表⽰、数据的组织,在此基础上基于OpenGL绘制出三维图形。

实验内容包括OpenGL编程环境搭建、OpenGL程序结构、基本数据类型、核⼼函数等的使⽤;基本图形的绘制(点、线段、折线、闭合折线、多边形、三⾓形、三⾓扇、三⾓条带、四边形、四边形条带等)及图形属性控制(线宽、颜⾊、线型、填充样式等);对指定的若⼲三维模型进⾏建模、绘制,在⼀个程序框架下实现,提交1次程序,1份实验报告。

2.2 实验任务1、使⽤Visual C++建⽴⼀个单⽂档(SDI)程序,完成OpenGL绘制框架程序的设计。

在此基础上参照提供的资料,定义绘制函数,基于⾃定义的若⼲点坐标与颜⾊,分别绘制绘制点、线段、不闭合折线、闭合折线、多边形、三⾓形、四边形、三⾓扇、三⾓条带、四边形条带。

2、使⽤1中建⽴的程序框架,完成如下任务:(1)绘制正棱柱(底⾯多变形的边数及⾼度可以通过对话框输⼊)(2)正棱锥(底⾯多变形的边数及⾼度可以通过对话框输⼊)(3)正棱台(底⾯多变形的边数、台⾼、锥⾼可以通过对话框输⼊)注意模型坐标系的选择和顶点坐标的计算,每个图形的绘制单独写成函数。

加⼊菜单绘制三、四、五、六边的情况,其他边数情况从弹出对话框中输⼊参数,然后绘制。

图形学试卷格式样卷(opengl)

图形学试卷格式样卷(opengl)

2、 要得到如右图示的效果,glBegin()函数的类型参数可取为(
3、要实现屏幕区域的多视口显示,应采用(
A.glOrtho() C.glViewport()
B.gluPerspective() C. OpenGL 有 两 条 平 行 的 流 水 线 , 一 条 是 ,另一条
福州大学
一、选择题
1、 通过( 真实感。 A.模板 A.GL_POLYGON D.GL_LINE_LOOP
《计算机图形学》课程
样卷
)技术,我们可以将 2D 图像数据映射到 3D 图元上,以增强场景的 B.纹理映射 B.GL_LINES C. 光照 D.混合 ) C.GL_LINE_STRIP )函数。
是 。 3、解决纹理映射问题的两步映射法中的第一步是把纹理映射到一个简单的三维中 间表面上,如__________、_________或立方体表面等。
三、判断题
1、齐次坐标(1,2,3,0)表示三维空间的矢量(1,2,3) ( 。
)
2、显示器采用 RGB 颜色模型,它是加性颜色模型。 ( 中就不用排序了。 ( )
L 2 的一侧。
第 2 页 共 2 页
五、程序设计题
右图示的某程序菜单用鼠标右键控制。要求 写出用 glut 库函数实现该菜单功能的 OpenGL 程 序。
六、推导题
设有两直线段 L1 与 L 2 ,其中 L1 的两端点为 p1 (x1 , y1 )、p 2 (x 2 , y 2 ) , L 2 的两 端点为 q1 (x 3 , y3 )、q 2 (x 4 , y 4 ) 。要求设计一算法,该算法可以测试 L1 是否完全在

3、消隐算法中,场景里的多边形在 Z-Buffer 算法中是要求排序的,而在画家方法

基于OpenGL的三维动画效果设计与实现

基于OpenGL的三维动画效果设计与实现

基于OpenGL的三维动画效果设计与实现OpenGL是一种跨平台的图形库,广泛应用于计算机图形学、游戏开发和虚拟现实等领域。

在OpenGL的基础上,可以实现各种精美的三维动画效果,如逼真的光影效果、自然的物理模拟和华丽的特效等。

本文将介绍如何基于OpenGL实现三维动画效果。

一、OpenGL简介OpenGL(Open Graphics Library)是一种跨平台的图形库,可以用于开发高性能的3D图形应用程序。

它提供了一套标准的API,程序员可以使用OpenGL库里的函数来绘制各种图形,包括点、线、三角形等。

OpenGL的主要优点是跨平台,程序可以在不同的操作系统和硬件上运行,并且不需要对程序做太多的修改。

二、OpenGL开发环境在开始OpenGL开发之前,需要配置正确的开发环境。

OpenGL的开发环境包括编程语言、OpenGL库、窗口系统和OpenGL的开发工具等。

编程语言:OpenGL支持多种编程语言,如C/C++、Java、Python等。

其中,C/C++是最常用的开发语言,因为它可以直接调用OpenGL的函数库。

OpenGL库:OpenGL库是开发OpenGL程序时必须的工具,它包含了OpenGL 的所有函数和常量。

窗口系统:OpenGL需要一个可视化的窗口系统,用来显示图形界面。

常用的窗口系统有Windows、Linux和MacOS等。

开发工具:开发OpenGL程序需要使用各种IDE和编辑器,如Visual Studio、CodeBlocks和Eclipse等。

三、实现三维动画效果的基础知识1.三维坐标系OpenGL使用右手坐标系表示三维坐标系,其中x轴向右,y轴向上,z轴向外。

2.矩阵变换OpenGL可以通过矩阵变换来实现图形的移动、旋转、缩放等操作。

常用的变换矩阵包括平移矩阵、旋转矩阵和缩放矩阵。

3.光照模型光照模型是OpenGL中重要的概念之一,它用来计算光源对物体的影响。

其中,主要包括光源的位置、光线的颜色和强度等因素。

(计算机图形学)4.OpenGL编程基础

(计算机图形学)4.OpenGL编程基础

绿色成分(G) 0.0 0.0 1.0 1.0 0.0 0.0 1.0 0.25 0.75 0.40
0.625 0.04 0.40 1.0
蓝色成分(B) 0.0 0.0 0.0 0.0 1.0 1.0 1.0 0.25 0.75 0.12 0.12 0.70 0.70 1.0
16
OpenGL程序实例——VC窗口绘制
32位浮点数 64位浮点数
定义为C类型 C字面值后缀
signed char
B
short
SLeabharlann longLfloat
F
double
D
8位无符号整数 unsigned char
Ub
16位无符号整数 unsigned short
Us
32位无符号整数 unsigned long
Ui
12
OpenGL程序实例——头文件包含
利用OpenGL实现图形绘制,首先要引入 OpenGL核心库以及其他需要使用的库的头文 件。
GLUT保证了gl.h和glu.h被正确包含。
#include <gl/glut.h> #include <windows.h>
13
OpenGL程序实例——GLUT窗口管理
初始化( glutInit ) 创建窗口( glutCreateWindow) 设定窗口的显示模式( glutInitDisplayMode) 指定窗口的位置和大小(
7
OpenGL的绘制流程——流水线
OpenGL命令将被放在一个命令缓冲区中,这样 命令缓冲区中包含了大量的命令、顶点数据和 纹理数据。当缓冲区被清空时,缓冲区中的命 令和数据都将传递给流水线的下一个阶段。
调用OpenGL API函数

计算机图形学OpenGL版实验1-4

计算机图形学OpenGL版实验1-4

实验1 OpenGL初识一、实验目的:熟悉编程环境;了解光栅图形显示器的特点;了解计算机绘图的特点;利用VC+OpenGL作为开发平台设计程序,以能够在屏幕上生成任意一个像素点为本实验的结束。

二、实验内容:(1)了解和使用VC的开发环境,理解简单的OpenGL程序结构。

(2)掌握OpenGL提供的基本图形函数,尤其是生成点的函数。

三、该程序的作用是在一个黑色的窗口中央画一个矩形、三角形和三个点,如图所示。

下面对各行语句进行说明:首先,需要包含头文件#include <GL/glut.h>,这是GLUT的头文件。

然后看main函数。

int main(int argc, char *argv[]),这个是带命令行参数的main函数。

这种以glut开头的函数都是GLUT工具包所提供的函数,下面对用到的几个函数进行介绍;1)glutInit,对GLUT进行初始化,这个函数必须在其它的GLUT使用之前调用一次。

其格式比较固定,一般都是glutInit(&argc, argv)就行;2) glutInitDisplayMode,设置显示方式,其中GLUT_RGB表示使用RGB颜色,与之对应的还有GLUT_INDEX(表示使用索引颜色)。

GLUT_SINGLE表示使用单缓冲,与之对应的还有GLUT_DOUBLE(使用双缓冲)。

更多信息,以后的实验教程会有讲解介绍;3) glutInitWindowPosition,设置窗口在屏幕中的位置;4) glutInitWindowSize,设置窗口的大小;5) glutCreateWindow,根据前述设置的信息创建窗口。

参数将被作为窗口的标题。

注意:窗口被创建后,并不立即显示到屏幕上。

需要调用glutMainLoop才能看到窗口;6) glutDisplayFunc,设置一个函数,当需要进行画图时,这个函数就会被调用。

(暂且这样理解);7) glutMainLoop,进行一个消息循环。

关于opengl实验报告

关于opengl实验报告

关于opengl实验报告OpenGL实验报告一、实验目的本实验旨在通过使用OpenGL图形库,掌握基本的3D图形编程技术,以及了解OpenGL的基本操作和常用函数。

二、实验环境1. 操作系统:Windows 102. 开发环境:Visual Studio 20193. 编程语言:C++4. 图形库:OpenGL三、实验内容1. 创建一个窗口并初始化OpenGL环境2. 绘制一个简单的三维立方体3. 添加光照效果和材质4. 实现简单的相机控制5. 添加纹理贴图四、实验过程1. 创建窗口并初始化OpenGL环境首先,我们使用OpenGL提供的函数来创建一个窗口,并初始化OpenGL环境。

这一步是整个实验的基础,也是我们能够进行后续操作的前提。

2. 绘制一个简单的三维立方体利用OpenGL提供的函数,我们可以很容易地绘制一个简单的三维立方体。

通过设置顶点坐标和法向量,我们可以使用OpenGL提供的函数来绘制出一个立方体。

3. 添加光照效果和材质在绘制立方体的基础上,我们可以通过设置光源的位置和颜色,以及物体的材质属性,来实现光照效果和材质的渲染。

这一步可以让我们的立方体看起来更加真实。

4. 实现简单的相机控制通过控制相机的位置和方向,我们可以实现简单的相机控制。

这样可以让我们在3D场景中自由地移动和观察物体。

5. 添加纹理贴图最后,我们可以通过加载纹理图片,并将其贴到立方体的表面上,来实现纹理贴图。

这样可以让我们的立方体看起来更加生动和具有真实感。

五、实验总结通过本次实验,我们学习了如何使用OpenGL图形库进行3D图形编程,掌握了基本的操作和常用函数。

同时,我们也实现了一个简单的3D场景,包括绘制立方体、添加光照效果和材质、实现相机控制以及添加纹理贴图。

这些技术和知识对于今后的图形编程工作将会有很大的帮助。

《计算机图形学》课内实验报告(实验一)

《计算机图形学》课内实验报告(实验一)
PFNGLGETINFOLOGARBPROC glGetInfoLogARB;
PFNGLUNIFORM1FARBPROC glUniform1fARB;
PFNGLGETUNIFORMLOCATIONARBPROC glGetUniformLocationARB;
#ifndef __APPLE__
PFNGLSECONDARYCOLOR3FPROC glSecondaryColor3f;
{
GLbyte infoLog[MAX_INFO_LOG_SIZE];
glGetInfoLogARB(progObj, MAX_INFO_LOG_SIZE, NULL, infoLog);
fprintf(stderr, "Error in program linkage!\n");
fprintf(stderr, "Info log: %s\n", infoLog);
// Demonstrates high-level shaders
// Program by Benjamin Lipchak
#include "../../Common/OpenGLSB.h" // System and OpenGL Stuff
#include "../../Common/GLTools.h" // System and OpenGL Stuff
// Initially set the blink parameter to 1 (no flicker)
if (flickerLocation != -1)
glUniform1fARB(flickerLocation,1.0f);
// Program object has changed, so we should revalidate
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机图形学第二次作业姓名:学号:学院:任课教师:一.设计要求试设计一个室内三维环境,并利用OPEN GL展示它得三维效果。

要求:(1)包含基本得实体元素:球,多面体,椎体,柱体,曲面等;(2)有全局光照与纹理功能(3)程序具有交互功能二.交互说明键盘得4个按键:上键:视角上移下键:视角下移左键:视角左移右键:视角右移三.效果展示四.程序代码#include<stdlib、h>#include<stdio、h>#include"glew、h"#include"glut、h"#include<windows、h>#pragma ment (lib, "glew32、lib")#define checkImageWidth 64#define checkImageHeight 64static GLubyte checkImage[checkImageHeight][checkImageWidth][4];static GLuint texName;static GLfloat xrot=0;static GLfloat yrot=0;//函数功能:绘制地面纹理图案void makeCheckImage(void){int i, j, c;for (i = 0; i < checkImageHeight; i++) {for (j = 0; j < checkImageWidth; j++) {c = ((((i&0x16)==0)^((j&0x16))==0))*255;checkImage[i][j][0] = (GLubyte) c;checkImage[i][j][1] = (GLubyte) c;checkImage[i][j][2] = (GLubyte) c;checkImage[i][j][3] = (GLubyte) 255;}}}//函数功能:初始化void SetupRC(void){glEnable(GL_LIGHTING); //启用灯源glEnable(GL_LIGHT0); //启用0号灯glShadeModel(GL_SMOOTH); //设置光滑着色模式glEnable(GL_DEPTH_TEST); //启用深度测试glEnable(GL_NORMALIZE); //启用法向量glClearColor(1、0f, 1、0f, 1、0f, 0、0f); //为色彩缓冲区指定用于清除得值//设置表面材料得属性GLfloat mat_ambient[] = {0、6f,0、6f,0、6f,1、0f};GLfloat mat_diffuse[] = {0、5f,0、5f,0、5f,1、0f};GLfloat mat_specular[] = {1、0f,1、0f,1、0f,1、0f,};GLfloat mat_shininess[] = {40、0f};glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient); //指定环境泛光得强度 glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse); //漫反射得强度glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular); //镜面反射得强度glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess); //镜面反射光得会聚强度//纹理makeCheckImage; //绘制地面纹理图案glPixelStorei(GL_UNPACK_ALIGNMENT, 1); //控制像素存储模式glGenTextures(1, &texName); //用来生成纹理得数量为1glBindTexture(GL_TEXTURE_2D, texName); //绑定纹理//纹理滤波,图象从纹理图象空间映射到帧缓冲图象空间glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, checkImageWidth,checkImageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, checkImage);}//函数功能:绘制墙壁void DrawWall(void){glPushMatrix; //矩阵堆栈压入glTranslated(1、2, 0、01, 1、2); //将变换矩阵与当前矩阵相乘,使原点移动到(参数值坐标) glScaled(2、4, 0、02, 2、4); //将比例矩阵与当前矩阵相乘,将当前图形沿x,y,z轴分别放大为原来得(参数值)倍glutSolidCube(1、0); //size=1、0得实心立方体glPopMatrix; //矩阵堆栈弹出}//函数功能:绘制立方柱体void DrawPillar(void){glPushMatrix;glTranslated(0, 0、15, 0);glScaled(0、02, 0、3, 0、02);glutSolidCube(1、0);glPopMatrix;}//函数功能:绘制桌子void DrawTable(void){glPushMatrix;glTranslated(0、05, 0、3, 0、05);glScaled(0、6, 0、02, 0、6);glutSolidCube(1、0); //绘制桌面glPopMatrix;glPushMatrix;glTranslated(0、275, 0, 0、275);DrawPillar; //绘制桌腿glTranslated(0, 0, 0、45);DrawPillar; //绘制桌腿glTranslated(0、45, 0, 0、45);DrawPillar; //绘制桌腿glTranslated(0, 0, 0、45);DrawPillar; //绘制桌腿glPopMatrix;}//函数功能:绘图void RenderScene(void){GLfloat light_position[]={2、0f, 6、0f, 3、0f, 0、0f};glLightfv(GL_LIGHT0,GL_POSITION,light_position); //指定0号光源得位置glMatrixMode(GL_PROJECTION); //对投影矩阵应用随后得矩阵操作glLoadIdentity; //将当前得用户坐标系得原点移到了屏幕中心GLfloat h = 1、0; //窗口得一半高度glOrtho(h*64/48、0, h*64/48、0, h, h, 0、1, 100、0); //将当前得可视空间设置为正投影空间:左,右,下,上,近,远。

glMatrixMode(GL_MODELVIEW); //对模型视景矩阵堆栈应用随后得矩阵操作glLoadIdentity;gluLookAt(2, 1、6, 2, 0, 0、2, 0, 0, 1, 0); //设置观察坐标系//开始绘制glRotatef(xrot, 1、0f, 0、0f, 0、0f); //旋转轴经过原点,方向为(1,0,0),旋转角度为xrot,方向满足右手定则glRotatef(yrot, 0、0f, 1、0f, 0、0f); //旋转轴经过原点,方向为(0,1,0),旋转角度为yrotglClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);glPushMatrix;glRotated(90、0, 0、0, 0、0, 1、0);DrawWall; //绘制一面墙壁glPopMatrix;glPushMatrix;glRotated(90、0, 1、0, 0、0, 0、0);DrawWall; //绘制另一面墙壁glPopMatrix;glPushMatrix;glTranslated(0、4, 0, 0、4);DrawTable; //绘制桌子glPopMatrix;glPushMatrix;glTranslated(0、2, 0、1, 0、85);glScaled(0、8, 0、8, 1、0);glutSolidCube(0、2); //绘制箱子glPopMatrix;glPushMatrix;glTranslated(0、6, 0、38, 0、6);glRotated(100, 0, 1, 0);glutSolidTeapot(0、1); //绘制茶壶glPopMatrix;glPushMatrix;glTranslated(0、3, 0、33, 0、5);glRotated(180, 0, 180, 180);glutSolidTorus(0、02f, 0、05, 25, 50);//绘制手镯【丝状花环】glPopMatrix;glPushMatrix;glTranslated(0、45, 0、42, 0、3);glutSolidSphere(0、1, 15, 50); //绘制球体glPopMatrix;glPushMatrix;glTranslated(1、0, 0、35, 0、3);glScaled(0、03, 0、7, 0、03);glutSolidCube(1、0); //绘制灯柱glPopMatrix;glPushMatrix;glTranslated(1、0, 0、7, 0、3);glRotated(190, 180, 200, 270);glutSolidCone(0、15, 0、25f, 30, 25); //绘制圆锥型灯罩glPopMatrix;//绘制纹理glEnable(GL_TEXTURE_2D); //开启纹理glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);//映射方式glBegin(GL_QUADS); //绘制地面//绘制四边形并给出当前顶点所对应得纹理坐标glTexCoord2f(0、0, 0、0); glVertex3f(0、0, 0、0, 0、0);glTexCoord2f(0、0, 1、0); glVertex3f(0、0, 0、0, 2、4);glTexCoord2f(1、0, 1、0); glVertex3f(2、4, 0、0, 2、4);glTexCoord2f(1、0, 0、0); glVertex3f(2、4, 0、0, 0、0);glEnd;glDisable(GL_TEXTURE_2D); //关闭纹理glFlush; //绘图结果显示到屏幕上}//函数功能:处理按键交互信息void SpecialKeys(int key, int x, int y){switch (key) {case GLUT_KEY_UP: //上键xrot += 1、0;break;case GLUT_KEY_DOWN: //下键xrot = 1、0;break;case GLUT_KEY_LEFT: //左键yrot += 1、0;break;case GLUT_KEY_RIGHT: //右键yrot = 1、0;break;default:break;}glutPostRedisplay; //标记当前窗口需要重新绘制glFlush; //绘图结果显示到屏幕上}//函数功能:改变窗口大小void ChangeSize(int w, int h){GLfloat lightPos[] = {50、f, 50、0f, 100、0f, 1、0f};GLfloat nRange = 1、9f;if (h == 0)h = 1;glViewport(0, 0, w, h); //重新设置屏幕上得窗口大小glMatrixMode(GL_PROJECTION);//后继操作都在投影变换范围内glLoadIdentity; //设置当前矩阵为单位矩阵//正交投影if (w <= h)glOrtho (nRange, nRange, nRange*h/w, nRange*h/w, nRange, nRange);elseglOrtho (nRange*w/h, nRange*w/h, nRange, nRange, nRange, nRange);glMatrixMode(GL_MODELVIEW); //选择模型观察矩阵glLoadIdentity; //设置当前矩阵为单位矩阵glLightfv(GL_LIGHT0, GL_POSITION, lightPos);//重新定义光源}void main{glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH); //双缓存glutInitWindowSize(600, 400); //窗口大小glutInitWindowPosition(300, 100); //窗口位置glutCreateWindow("xdy room"); //创建窗口,名为xdy roomSetupRC; //自定义得初始化函数glutDisplayFunc(RenderScene); //显示回调函数,用于绘图glutReshapeFunc(ChangeSize); //处理改变窗口大小glutSpecialFunc(SpecialKeys); //处理按键交互信息glutMainLoop; //让GLUT框架开始运行, 处理交互事件}。

相关文档
最新文档