欢迎来到天天文库
浏览记录
ID:39468770
大小:276.50 KB
页数:15页
时间:2019-07-04
《TextureLighting纹理光照》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一、编程环境简介: VisualC++6.0是微软公司推出的开发Win32应用程序(Windows95/98/2000/XP/NT)的、面向对象的可视化集成工具。它的最大优点就是提供了功能强大的MFC类库,MFC是一个很大的C++类层次结构,其中封装了大量的类及其函数,很多Windows程序所共有的标准内容可以由MFC的类来提供,MFC类为这些内容提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用程序特有的东西填入这个轮廓,这将简化编程工作,大大的减少程序员编写的代码数量,使编程工作变得更加轻松容易。下面介绍一下MFC类库:MFC是一个很大的、扩展了的C++类层
2、次结构,它能使开发Windows应用程序变得更加容易。MFC是在整个Windows家族中都是兼容的,也就是说,无论是Windows3.x、Windows95还是WindowsNT,所使用的MFC是兼容的。每当新的Windows版本出现时,MFC也会得到修改以便使旧的编译器和代码能在新的系统中工作。MFC也回得到扩展,添加新的特性、变得更加容易建立应用程序。与传统上使用C语言直接访问WindowsAPI相反,使用MFC和C++的优点是MFC已经包含和压缩了所有标准的"样板文件"代码,这些代码是所有用C编写的Windows程序所必需的。因此用MFC编写的程序要比用C语言编写的程序小得多。另
3、外,MFC所编写的程序的性能也毫无损失。必要时,你也可以直接调用标准C函数,因为MFC不修改也不隐藏Windows程序的基本结构。使用MFC的最大优点是它为你做了所有最难做的事。MFC中包含了上成千上万行正确、优化和功能强大的Windows代码。你所调用的很多成员函数完成了你自己可能很难完成的工作。从这点上将,MFC极大地加快了你的程序开发速度。MFC是很庞大的。例如,版本4.0中包含了大约200个不同的类。万幸的是,你在典型的程序中不需要使用所有的函数。事实上,你可能只需要使用其中的十多个MFC中的不同类就可以建立一个非常漂亮的程序。该层次结构大约可分为几种不同的类型的类:1应用程序
4、框架2图形绘制的绘制对象3文件服务4异常处理5结构-List、Array和Map6Internet服务7OLE28数据库9通用类OpenGL的特点及功能介绍 OpenGL是用于开发简捷的交互式二维和三维图形应用程序的最佳环境,任何高性能的图形应用程序,从3D动画、CAD辅助设计到可视化访真,都可以利用OpenGL高质量、高性能的特点。OpenGL自1992年出现以来,逐渐发展完善,已成为一个唯一开放的,独立于应用平台的图形标准,一个典型的OpenGL应用程序可以在任何平台上运行--只需要使用目标系统的OpenGL库重新编译一下。 OpenGL非常接近硬件,是一个图形与硬件的接口,包
5、括了100多个图形函数用来建立三维模型和进行三维实时交互。OpenGL强有力的图形函数不要求开发人员把三维物体模型的数据写成固定的数据格式,也不要求开发人员编写矩阵变换、外部设备访问等函数,大大地简化了编写三维图形的程序。例如: 1)OpenGL提供一系列的三维图形单元(图元)供开发者调用。 2)OpenGL提供一系列的图形变换函数。 3)OpenGL提供一系列的外部设备访问函数,使开发者可以方便地访问鼠标、键盘、空间球、数据手套等外部设备。 由于微软在Windows中包含了OpenGL,所以OpenGL可以与VisualC++紧密接合,简单快捷地实现有关计算和图形算法,并保证
6、算法的正确性和可靠性。简单地说,OpenGL具有建模、变换、色彩处理、光线处理、纹理影射、图像处理、动画及物体运动模糊等功能: 1、建模 OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体,如球、锥、多面体、茶壶以及复杂曲线和曲面(例如Bezier、Nurbs等曲线或曲面)的绘制函数。 2、变换 OpenGL图形库的变换包括基本变换和投影变换。基本变换有平移、旋转、变比、镜像四种变换,投影变换有平行投影(又称正射投影)和透视投影两种变换。 3、颜色模式设置 OpenGL颜色模式有两种,即RGBA模式和颜色索引(ColorIndex)。 4、
7、光照和材质设置 OpenGL光有辐射光(EmittedLight)、环境光(AmbientLight)、漫反射光(DiffuseLight)和镜面光(SpecularLight)。材质是用光反射率来表示。客观世界中的物体最终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。 5、纹理映射(TextureMapping) 利用OpenGL纹理映射功能可以十分逼真地表达物体表面细节。 6、位图显示和图象增强 Ope
此文档下载收益归作者所有