77范文网 - 专业文章范例文档资料分享平台

《虚拟现实与系统仿真》实验指导书- 修订(3)

来源:网络收集 时间:2019-01-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

glLightfv(GL_LIGHT0,GL_POSITION,light_position); glLightfv(GL_LIGHT0,GL_AMBIENT,light_ambient); glLightfv(GL_LIGHT0,GL_DIFFUSE,light_diffuse); glLightfv(GL_LIGHT0,GL_SPECULAR,light_specular); //设置材质参数

GLfloat material_ambient[]={0.2f,0.2f,0.2f,0.2f}; GLfloat material_diffuse[]={0.2f,0.8f,0.4f,0.8f}; GLfloat material_specular[]={0.2f,0.8f,0.4f,0.8f}; GLfloat material_emission[]={0.2f,0.2f,0.2f,1.0f}; GLfloat material_shiness[]={10.0f};

glMaterialfv(GL_BACK,GL_DIFFUSE,material_diffuse); glMaterialfv(GL_BACK,GL_SPECULAR,material_specular); glMaterialfv(GL_BACK,GL_EMISSION,material_emission); glMaterialfv(GL_BACK,GL_SHININESS,material_shiness); glColor3f(1.0f,0.0f,0.0f);//红色 glRotated(60.0,1.0,1.0,1.0); auxSolidTeapot(2.0);

SwapBuffers(pDC->m_hDC); //双缓冲 wglMakeCurrent(NULL,NULL);

glMaterialfv(GL_BACK,GL_AMBIENT,material_ambient);//FRONT_AND_BACK

实验结果:

实验四 纹理映射

一:实验目的

1. 掌握二维纹理映射方法。

2. 掌握利用OpenGL编写绘制具有真实感效果的图形方法。

二:实验内容

掌握二维纹理映射方法。

三:实验要求

通过本实验,掌握掌握二维纹理映射方法。

四:实验程序

实验步骤1~4与上述实验1相同

5在OpenGLPlatView.cpp中OnDraw函数中添加以下代码:

wglMakeCurrent(pDC->m_hDC,m_hRC);

glClearColor(1.0f,1.0f,1.0f,1.0f);

glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glEnable(GL_COLOR_MATERIAL); glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); glEnable(GL_NORMALIZE); glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LESS); glLoadIdentity();

GLfloat light_position[]={1.0f,1.0f,1.0f,0.0f}; GLfloat light_ambient[]={0.2f,0.2f,0.2f,0.2f}; GLfloat light_diffuse[]={0.5f,0.5f,0.2f,0.2f}; GLfloat light_specular[]={0.5f,0.5f,0.5f,0.2f}; glLightfv(GL_LIGHT0,GL_POSITION,light_position); glLightfv(GL_LIGHT0,GL_AMBIENT,light_ambient); glLightfv(GL_LIGHT0,GL_DIFFUSE,light_diffuse); glLightfv(GL_LIGHT0,GL_SPECULAR,light_specular); //设置材质参数

GLfloat material_ambient[]={0.2f,0.2f,0.2f,0.2f}; GLfloat material_diffuse[]={0.2f,0.8f,0.4f,0.8f};

glEnable(GL_AUTO_NORMAL);

glMatrixMode(GL_MODELVIEW); //设置光源参数

GLfloat material_specular[]={0.2f,0.8f,0.4f,0.8f}; GLfloat material_emission[]={0.2f,0.2f,0.2f,1.0f}; GLfloat material_shiness[]={10.0f};

glMaterialfv(GL_BACK,GL_DIFFUSE,material_diffuse); glMaterialfv(GL_BACK,GL_SPECULAR,material_specular); glMaterialfv(GL_BACK,GL_EMISSION,material_emission); glMaterialfv(GL_BACK,GL_SHININESS,material_shiness); glRotated(80.0,1.0,1.0,1.0);

AUX_RGBImageRec *picture=auxDIBImageLoad(_T(\));//(此处图片路径为C盘根目if(picture!=NULL) { }

glBegin(GL_QUADS); glColor3f(0.0,1.0,0.0);

glTexCoord2d(-2.0,-2.0);glVertex3d(-2.5,-2.5,3); glTexCoord2d(-2.0,2.0);glVertex3d(2.5,-2.5,3); glTexCoord2d(2.0,2.0);glVertex3d(2.5,2.5,3); glTexCoord2d(2.0,-2.0);glVertex3d(-2.5,2.5,3); glColor3f(1.0,1.0,0.0);

glTexCoord2d(0.0,0.0);glVertex3d(-2.5,2.5,0); glTexCoord2d(0.0,1.0);glVertex3d(2.5,2.5,0); glTexCoord2d(1.0,1.0);glVertex3d(2.5,2.5,3); glTexCoord2d(1.0,0.0);glVertex3d(-2.5,2.5,3); glColor3f(1.0,0.0,1.0);

glEnable(GL_TEXTURE_2D);

glPixelStorei(GL_UNPACK_ALIGNMENT,1); glTexImage2D(GL_TEXTURE_2D,//二维纹理

0,//纹理层次 3,//颜色分量个数

picture->sizeX,//纹理宽度 picture->sizeY,//纹理高度 0,//纹理边框宽度(或) GL_RGB,//像素数据格式

GL_UNSIGNED_BYTE,//像素数据类型 picture->data);//存储图象数据

glMaterialfv(GL_BACK,GL_AMBIENT,material_ambient);//FRONT_AND_BACK

录下)

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);

glTexEnvi(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_MODULATE);//GL_DECAL,GL_

glTexCoord2d(0.4,0.4);glVertex3d(-2.5,-2.5,0); glTexCoord2d(0.4,0.6);glVertex3d(-2.5,-2.5,3); glTexCoord2d(0.6,0.6);glVertex3d(-2.5,2.5,3); glTexCoord2d(0.4,0.4);glVertex3d(-2.5,2.5,0); glEnd();

SwapBuffers(pDC->m_hDC); //双缓冲 wglMakeCurrent(NULL,NULL); if (picture!=NULL) {

delete picture->data; delete picture; } // if结构结束 // 添加新的代码结束。

// //////////////////////////////////////////////////////////

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库《虚拟现实与系统仿真》实验指导书- 修订(3)在线全文阅读。

《虚拟现实与系统仿真》实验指导书- 修订(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/460374.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: