分类分类
大小:22.79 MB更新:2016/05/23
类别:程序开发系统:Winll

opengl编程指南第七版是对美版OpenGL编程指南原书第7版的中文电子扫描版pdf简介,附带opengl编程指南第七版源码,内容详细,图文高清可见,有需要的用户欢迎来IT猫扑下载~
《OpenGL编程指南(原书第7版)》共分15章。前5章描述了一些基本信息,读者需要理解这些内容,才能在场景中绘制正确着色和光照的三维物体。
·第1章对OpenGL可以实现的功能进行简要的介绍。该章还提供了一个简单的OpenGL程序,并介绍需要了解的一些基本编程细节,有助于学习后续章节的内容。
·第2章解释如何创建一个物体的三维几何图形描述,并最终把它绘制到屏幕上。
·第3章描述三维模型在绘制到二维屏幕之前如何进行变换。我们可以控制这些变换,显示模型的特定视图。
·第4章描述如何指定颜色以及用于绘制物体的着色方法。
·第5章解释如何控制围绕一个物体的光照条件,以及这个物体如何对光照作出反应(也就是说,它是如何反射或吸收光线的)。光照是一个重要的主题,因为物体在没有光照的情况下看上去往往没有立体感。
接下来的几章说明如何对三维场景进行优化以及如何添加一些高级特性。在没有精通OpenGL之前,读者可以选择不使用这些高级特性。有些特别高级的主题在出现时会有特殊的标记。
·第6章描述创建逼真场景所需要的一些基本技巧:alpha混合(创建透明物体)、抗锯齿(消除锯齿状边缘)、大气效果(模拟雾和烟雾)以及多边形偏移(在着重显示填充多边形的边框时消除不良视觉效果)。
·第7章讨论如何存储一系列的OpenGL命令,用于在以后执行。我们可以使用这个特性来提高OpenGL程序的性能。
·第8章讨论如何操作表示位图或图像的二维数据。位图的一种常见用途就是描述字体中的字符。
·第9章解释如何把称为纹理的一维、二维和三维图像映射到三维物体表面。纹理贴图可以实现许多非常精彩的效果。
·第10章描述OpenGL实现中可能存在的所有缓冲区,并解释如何对它们进行控制。我们可以使用这些缓冲区实现诸如隐藏表面消除、模板、屏蔽、运动模糊和景深聚焦等效果。
·第11章显示了如何使用GLU(OpenGL Utility Library,OpenGL工具函数库)中的分格化和二次方程函数。
·第12章介绍生成曲线和表面的高级技巧。
·第13章说明如何使用OpenGL的选择机制来选择屏幕上的一个物体。此外,该章还解释了反馈机制,它允许我们收集OpenGL所产生的绘图信息,而不是在屏幕上绘制物体。
·第14章描述如何用巧妙的或意想不到的方法来使用OpenGL,产生一些有趣的结果。这些技巧是通过对OpenGL及其技术前驱Silicon Graphics IRIS图形函数库的多年应用和实践总结出来的。
·第15章讨论OpenGL 2.0所引入的变化,包括对OpenGL着色语言的介绍。OpenGL着色语言通常又称为GLSL,它允许对OpenGL的顶点和片断处理阶段进行控制。这个特性可以极大地提高图像的质量,充分体现OpenGL的计算威力。
另外,《OpenGL编程指南(原书第7版)》还包括几个非常实用的附录:
·附录A讨论了用于处理窗口系统操作的函数库。GLUT(OpenGL实用工具库)具有可移植性,它可以使代码更短、更紧凑。
·附录B列出了OpenGL所维护的状态变量,并描述了如何获取它们的值。
·附录C介绍了隐藏在矩阵转换后面的一些数学知识。
·附录D简单描述了窗口系统特定的函数库所提供的函数,它们进行了扩展,以支持OpenGL渲染。本附录讨论了X窗口系统、Apple的Mac OS和Microsoft Windows的窗口系统接口。
·附录E对OpenGL所执行的操作提供了一个技术性的浏览,简要描述了当应用程序执行时这些操作的出现顺序。
·附录F列出了一些基于OpenGL设计者思路的编程提示,这些可能对读者有用。
·附录G描述了OpenGL实现在什么时候以及什么地方必须生成OpenGL规范所描述的精确像素。
·附录H描述了如何计算不同类型的几何物体的法线向量。
·附录I列出了OpenGL着色语言所提供的所有内置的变量和函数。
·附录J介绍了各种浮点数、共享指数像素和纹理单元格式。
·附录K介绍了存储单成分和双成分压缩纹理的纹理格式。
·附录L介绍了GLSL 1.40的uniform变量缓存区的标准内存布局。
最后,《OpenGL编程指南(原书第7版)》还提供了一个术语表,对本书所使用的一些关键术语进行了定义。
《OpenGL编程指南(原书第7版)》包含了OpenGL 3.0和OpenGL 3.1的新的和更新的内容。通过这些版本(这也是本书值得庆祝的18岁生日),OpenGL经历了与其之前的版本最显著的改变。3.0版添加了很多新的功能,并且添加了废弃模型,它建立了一种方法把陈旧的功能从库中删除。注意,只有新功能添加到了3.0版中,才会使其在源代码和二进制文件上都和之前的版本向后兼容。然而,很多功能标记为废弃的,表示可能在API未来的版本中删除。
《OpenGL编程指南(原书第7版)》介绍的和OpenGL 3.0相关的更新内容包括:
OpenGL中的新功能:
·OpenGL着色语言更新,创建了GLSL 1.30版。
·条件渲染。
·对映射缓冲区对象的内存的细粒度访问以用于更新和读取。
·除了纹理图像格式(在OpenGL 2.1中加入),还有用于帧缓冲区的浮点数像素格式。
·帧缓冲区和渲染缓冲区对象。
·为小的动态范围数据采用紧凑的浮点表示,以减少内存存储占用。
·改进了对复制数据时的多采样缓冲区交互的支持。
·纹理图像和渲染缓冲区中的非规范化的整数值保留它们最初的表示,相对于OpenGL将这些值映射到范围[0,1]的常规操作。
·支持一维纹理数组和二维纹理数组。
·附加的包装像素格式支持访问新的渲染缓冲区。
·针对多渲染目标,分开混合和写屏蔽控制。
·纹理压缩格式。
·纹理的单成分和双成分的内部格式。
·转换反馈。
·顶点数组对象。
·sRGB帧缓冲区格式。
·废弃模式的深入讨论。
·修复错误并更新标记名。
对于OpenGL 3.1:
·标识出OpenGL 3.0中因废弃而要删除的功能。
新的功能:
·OpenGL着色语言更新,创建了GLSL 1.40版。
·实例化渲染。
·缓冲区之间高效的服务器端数据复制。
·在单个调用作用渲染多个类似的图元,用一个特殊标记(由用户指定)来表示何时重新启动一个图元。
·纹理缓冲区对象。
·纹理矩形。
·uniform缓冲区对象。
·带符号的规范化纹理单元格式。
《OpenGL编程指南(原书第7版)》假定读者知道如何使用C语言编写程序,并且了解一些数学背景知识(几何、三角、线性代数、积分和微分几何)。即使读者对计算机图形技术领域了解不多,仍然能够理解本书所讨论的绝大部分内容。当然,计算机图形学是一个巨大的主题,因此读者最好能够扩展自己在这个领域的知识。下面是我们推荐的两本参考书:
·《Computer Graphics: Principles and Practice》:作者James D.Foley、Andries van Dam、Steven K.Feiner和John F.Hughes(Addison-Wesley,1990)。该书是计算机图形学领域的百科全书,它包括了丰富的信息。但是,读者在阅读这本书之前最好已经对计算机图形学有一定程度的了解。
·《3D Computer Graphics》:作者Andrew S. Glassner(The Lyons Press,1994)。该书对计算机图形学进行了非技术性的、通俗易懂的介绍。这本书重点介绍计算机图形学可以实现的视觉效果,而不是实现这些效果所需要的技术。
另外,读者还可以访问OpenGL的官方网站。这个网站包含了各种类型的通用信息,包括软件、示例程序、文档、FAQ、讨论版和新闻等。
另外,OpenGL官方网站记录了组成OpenGL 3.0版和OpenGL 3.1版所有过程的完整文档。这些文档代替了OpenGL体系结构审核委员会和Addison Wesley出版的《OpenGL Reference Manual》(OpenGL参考手册)。
OpenGL实际上是一种独立于硬件的程序接口规范。在一种特定类型的硬件上,所使用的是它的一种特定实现。本书解释了如何使用所有的OpenGL实现进行编程。但是,由于各种OpenGL实现可能存在微小的差别(例如,在渲染性能以及提供额外的、可选的特性方面),因此读者可能需要寻找与自己所使用的特定OpenGL实现相关的补充文档。另外,读者所使用的系统还可能提供了与OpenGL相关的实用函数库、工具箱、编程和调试支持工具、各种窗口部件、示例程序和演示程序等。
《OpenGL编程指南(原书第7版)》包含了许多示例程序,以说明各种OpenGL编程技巧的具体用法。由于本书的读者背景各不相同,从新手到老手,既有计算机图形学的知识又有OpenGL的知识,本书中的示例通常都展示了一个特定渲染条件下的最简单的方法,并且使用OpenGL 3.0接口来说明。这么做的目的主要是为了让那些刚开始接触OpenGL的读者能够更直接和更容易地接受本书所介绍的内容。
在那里,你将会找到本书中所有示例的源代码,使用最新功能的实现,以及介绍从一个版本的OpenGL迁移到另一个版本所需的修改的额外讨论。
《OpenGL编程指南(原书第7版)》中包含的所有程序都使用了OpenGL Utility Toolkit (GLUT),其最初的作者是Mark Kilgard。对于这个版本,我们使用了开发freeglut项目的人们所编写的GLUT接口的开源版本。他们扩展了Mark最初的工作(那些工作在Mark Kilgard的《OpenGL Programming for the X Window System》Addison-Wesley,1996,一书中有详细的介绍)。
可以从这个站点获取它们的实现的代码和二进制文件。
《OpenGL编程指南(原书第7版)》1.6节和附录A给出了关于使用GLUT的更多信息。
许多OpenGL实现还可能包含一些示例代码,作为系统的一部分。这些源代码可能是这种OpenGL实现应该使用的最佳代码,因为它可能针对当前的系统进行了优化。读者可以参阅与自己使用的系统相关的OpenGL文档,了解从哪里下载这些示例程序。
Nate Robin编写了一套教学程序,用于演示OpenGL编程的基本概念。它允许用户修改函数的参数,以交互的方式观察它们的效果。这套教程所涵盖的主题包括变换、光照、雾和纹理。我们极力推荐使用这些教程。它们具有可移植性,并且使用了前面所提到的GLUT。
勘误表
《OpenGL编程指南(原书第7版)》使用如下的约定字体:
·粗体—表示命令和函数的名称和矩阵。
·斜体—变量、参数、参数名、空间维度、矩阵成员和第一次出现的关键术语。
·常规字体—每句类型和定义的常量。
代码示例以等宽字体显示,命令概览放在专门的框线中。
在命令概览部分,花括号表示可选的数据类型。在下面的例子中,glCommand具有4个可能的后缀:s、i、f和d,分别表示数据类型GLshort、GLint、GLfloat和GLdouble。在glCommand函数的原型中,TYPE表示这些后缀所提示的数据类型。
void glCommand{sifd}(TYPE x1, TYPE y1, TYPE x2, TYPE y2);
正如前面所提到的,本书的这一版本主要针对OpenGL 3.0和OpenGL 3.1。OpenGL 3.0对于目前可用的任何版本完全向后兼容。然而,OpenGL 3.1采用了废弃模式,删除了很多与现代图形系统不太兼容的旧功能。尽管很多功能从“核心的”OpenGL中删除了,为了消除版本之间的过渡,OpenGL ARB发布了GL_ARB_compatibility扩展。如果你的实现支持这个扩展,它将能够使用所有删除的功能。为了便于识别那些从OpenGL 3.1中删除了的、仍然得到兼容扩展支持的功能,在《OpenGL编程指南(原书第7版)》中,介绍命令或函数的边框的旁边会给出一个信息表格,其中列出受到影响的函数或符号。
尽管有些功能从OpenGL中废弃并删除了,但一些这样的功能影响着库,例如OpenGL Utility Library,通常称之为GLU。这些在OpenGL 3.1的变化中受到影响的函数,也会在旁边的表格中列出。
creo 2.0中文版从入门到精通程序开发115.00 MB电子版
详情python学习手册 第5版 pdf程序开发13.30 MB中文完整版
详情游戏设计梦工厂电子书程序开发68.31 MB高清免费版
详情欧姆龙CP1H/CP1L单元编程手册程序开发33.70 MB中文版
详情微信小程序实战入门内涵完整实例解析程序开发23.71 MB高清完整版
详情跟老齐学python从入门到精通电子书程序开发4.31 MB完整版
详情stm32从入门到精通电子版程序开发32.00 MB高清完整版
详情ASP.NET4入门经典 涵盖C#和VB.NET(第6版)程序开发78.70 MBpdf电子书中文版
详情领域驱动设计与模式实战中文版程序开发64.00 MB高清电子扫描版
详情opengl编程指南原书第八版程序开发5.89 MBpdf 中文电子高清版
详情Xilinx FPGA开发实用教程第2版程序开发49.50 MBpdf高清完整版
详情netty实战中文版pdf程序开发13.50 MB高清版
详情vba编程从入门到精通 pdf程序开发6.20 MB电子书完整版
详情c++从入门到精通 第二版 pdf程序开发157.00 MB高清版
详情PHPWord中文使用手册程序开发72.00 KB官方版
详情程序员教程软考指定用书(第3版)程序开发28.77 MB最新2009高清PDF版
详情谭浩强c语言程序设计第四版电子版程序开发17.70 MBpdf高清扫描版
详情stm32嵌入式系统开发实战指南 FreeRTOS与LwIP联合移植程序开发45.20 MB电子完整扫描版
详情nodejs实战双色电子版程序开发16.40 MB完整版
详情arm体系结构与编程最新版程序开发114.60 MB杜春雷著
详情精通asp.net 4.5 第5版 pdf程序开发58.18 MB电子版
详情Head First Servlets and JSP(第2版)程序开发67.00 MBpdf高清完整版
详情stm32自学笔记 第2版 pdf程序开发32.00 MB电子版
详情JQuery API 1.8.3 中文参考手册程序开发2.20 MB正式版
详情ThinkPHP5.0中文手册程序开发5.00 MB官方版
详情jQuery1.7.2 中文手册程序开发562.00 KBchm修正版
详情jQuery API 3.2.1 中文手册程序开发999.00 KBchm版
详情ThinkPHP3.1新手入门手册程序开发487.00 KB官方版
详情ASP.NET基础教程 C#案例版程序开发15.48 MB中文电子扫描版
详情谭浩强C程序设计完整ppt和程序第五版程序开发5.47 MB免费版
详情小程序从0到1微信全栈工程师一本通电子版程序开发14.85 MB高清版
详情C++多核高级编程中文版程序开发57.35 MB高清版
详情matlab数值计算pdf程序开发15.24 MB免费版
详情php5.6中文手册程序开发18.50 MB官方版
详情PHPCMSV9用户手册程序开发14.11 MB官方版
详情java完全自学手册pdf程序开发1.71 MB电子版
详情proe5.0从入门到精通pdf高清程序开发5.00 MB电子版
详情android基础教程第4版pdf程序开发12.59 MB高清免费版
详情python并行编程手册pdf程序开发35.64 MB高清免费版
详情游戏化实战电子书程序开发35.55 MB高清免费版
详情点击查看更多
java从入门到精通第三版程序开发486.00 MB电子版完整版
详情python学习手册 第5版 pdf程序开发13.30 MB中文完整版
详情程序员教程软考指定用书(第3版)程序开发28.77 MB最新2009高清PDF版
详情软件设计师教程(第2版)程序开发91.00 MBpdf版
详情Redhat LINUX 9从入门到精通程序开发42.62 MB免费版
详情hadoop权威指南第5版电子书程序开发0.00 B完整扫描版
详情c++从入门到精通 第二版 pdf程序开发157.00 MB高清版
详情周志明深入理解java虚拟机 第三版 pdf程序开发0.00 B电子版
详情stm32从入门到精通电子版程序开发32.00 MB高清完整版
详情系统分析师教程张友生pdf高清版程序开发105.30 MB2010最新版
详情vue.js权威指南电子版程序开发97.70 MB高清版
详情数据结构教材(严蔚敏编著)程序开发27.90 MBPDF高清版
详情hadoop权威指南第四版中文版电子书程序开发8.56 MBpdf版本
详情谭浩强C程序设计完整ppt和程序第五版程序开发5.47 MB免费版
详情深入浅出python电子书程序开发0.00 B完整版
详情Python程序设计基础程序开发2.95 MBpdf高清电子版
详情程序员教程第4版(软考指定用书)程序开发9.90 MB2014免费版
详情c#入门经典第7版电子档程序开发148.73 MB中文版
详情runoob菜鸟教程离线版程序开发12.40 MB免费版
详情vb从入门到精通第三版pdf程序开发20.00 MB电子版
详情stm32库开发实战指南 电子书程序开发117.00 MB完整版
详情opengl编程指南第9版程序开发5.90 MBpdf 高清版
详情谭浩强c语言程序设计第四版电子版程序开发17.70 MBpdf高清扫描版
详情实现领域驱动设计 完整版程序开发24.00 MB中文电子版带书签目录
详情精通asp.net mvc5中文版程序开发117.00 MB高清完整扫描版
详情vba编程从入门到精通 pdf程序开发6.20 MB电子书完整版
详情android studio应用开发实战详解 pdf程序开发0.00 B电子完整版
详情j2ee经典学习教程(独家推荐)程序开发14.32 MBpdf高清版
详情人月神话40周年pdf程序开发91.93 MB中文纪念版
详情netty实战中文版pdf程序开发13.50 MB高清版
详情creo 2.0中文版从入门到精通程序开发115.00 MB电子版
详情bootstrap用户离线文档chm程序开发1.90 MBv3.3.4 免费版
详情深入浅出mfc 第5版电子版程序开发26.60 MB完整扫描版
详情java从入门到精通第4版程序开发81.50 MB中文版电子版
详情proe5.0从入门到精通pdf高清程序开发5.00 MB电子版
详情arm体系结构与编程最新版程序开发114.60 MB杜春雷著
详情ug nx 8.0中文版完全自学手册程序开发23.20 MB附视频教程
详情游戏设计梦工厂电子书程序开发68.31 MB高清免费版
详情c#从入门到精通第3版pdf程序开发120.50 MB电子书扫描版
详情stm32嵌入式系统开发实战指南 FreeRTOS与LwIP联合移植程序开发45.20 MB电子完整扫描版
详情点击查看更多
j2ee经典学习教程(独家推荐)程序开发14.32 MBpdf高清版
详情Redhat LINUX 9从入门到精通程序开发42.62 MB免费版
详情实战java虚拟机 jvm故障诊断与性能优化pdf程序开发42.00 MB完整版电子版
详情runoob菜鸟教程离线版程序开发12.40 MB免费版
详情c++primer第5版中文版pdf程序开发0.00 B中英超清电子版
详情精通python爬虫框架scrapy epub+azw3+mobi程序开发0.00 B
详情matlab数值计算pdf程序开发15.24 MB免费版
详情opengl编程指南第7版程序开发22.79 MBpdf 中文扫描版
详情jQuery API 3.2.1 中文手册程序开发999.00 KBchm版
详情php7.3.8离线中文手册程序开发31.59 MB官方版
详情深入浅出google android pdf程序开发58.00 MB完整版扫描版_E2ECloud工作室
详情周志明深入理解java虚拟机 第三版 pdf程序开发0.00 B电子版
详情python学习手册 第4版程序开发0.00 B
详情php5.6中文手册程序开发18.50 MB官方版
详情hadoop权威指南第三版中文pdf程序开发111.80 MB电子书
详情数值方法matlab版第四版程序开发20.60 MB高清完整版
详情opengl编程指南第9版程序开发5.90 MBpdf 高清版
详情html5参考手册中文版程序开发182.00 KB官方完整版
详情小程序巧应用微信小程序开发实战pdf程序开发72.58 MB高清完整版
详情PHP7.2中文手册程序开发30.20 MB官方版
详情android开发入门与实战 第2版 pdf程序开发39.00 MB电子版完整版
详情html手册完整版程序开发8.45 MB中文版
详情matlab数值分析与应用pdf程序开发12.41 MB高清完整版
详情linux命令大全chm版程序开发504.00 KB
详情ThinkPHP5.1完全开发手册程序开发4.00 MBpdf版
详情LDC1000金属探测传感器程序资料程序开发3.83 MB大全版
详情stm32自学笔记 第2版 pdf程序开发32.00 MB电子版
详情linux命令详解手册pdf程序开发771.00 KB
详情java从入门到精通第三版程序开发486.00 MB电子版完整版
详情asp.net4从入门到精通 pdf程序开发65.70 MB中文电子书完整版
详情ThinkPHP5.0中文手册程序开发5.00 MB官方版
详情Java8编程入门官方教程(第6版)程序开发4.49 MBpdf高清电子版
详情c++从入门到精通 第二版 pdf程序开发157.00 MB高清版
详情android studio应用开发实战详解 pdf程序开发0.00 B电子完整版
详情c程序设计第四版完整版程序开发17.80 MB高清电子版_附课后习题答案
详情node.js权威指南完整版程序开发0.00 B高清电子版
详情深入浅出mfc 扫描版 pdf程序开发27.00 MB电子版完整版
详情Python程序设计基础程序开发2.95 MBpdf高清电子版
详情python学习手册 第5版 pdf程序开发13.30 MB中文完整版
详情深入php与jquery开发中文版程序开发25.10 MB高清版
详情点击查看更多










