大小:111.39M
更新时间:23-09-11
系统:Pc
opengl超级宝典第五版是由Richard.Wright,Jr.Nicholas Haemel和Graham Sellers Benjamin Lipchak所编著的一本OpenGL及3D图形编程最好的入门指南书籍,涵盖了使用最新版本的OpenGL进行编程所需要的主要知识。这本书非常适合想要入门opengl的程序员,也可以帮助经验丰富的OpenGL程序员学习如何移植自己的应用程序,里面介绍了如何使用opengl的程序,怎样设置3D渲染环境。
第一部分是OpenGL/3D图形基本教程,第二部分涵盖了更加深入的OpenGL编程主题,第三部分则涵盖了一些操作系统特定性质,帮助读者读者在选定平台对OpenGL进行充分的利用。这3部分之后是3个附录,包含了其它OpenGL优秀参考资源和教程的汇总、一个简短的术语表,以及OpenGL核心框架的完整参考。内容丰富,有需要的朋友可以下载阅读。
《OpenGL超级宝典(第5版)》是OpenGL及3D图形编程的入门指南,涵盖了使用版本的OpenGL进行编程所需要的主要知识。全书分三部分,共16章,另有3个附录。部分包括第1章到第7章,介绍如何构建一个使用OpenGL的程序、如何设置3D渲染环境,以及如何创建基本对象和光线并对他们进行着色。然后深入研究如何使用OpenGL,并向读者介绍GLSL,以及如何创建自己的着色器。第二部分包括第8章到第12章,将进行更深入的研究,而懂得如何应用这些高级特性将使读者业余3D玩家的水平。这一部分不仅能够使我们掌握更多的可视化效果,同时也考虑了性能表现。第三部分包括第13章到第16章,着重介绍OpenGL如何支持和连接Windows、MacOSX、Linux和掌上设备。附录部分给出了更多阅读建议、术语表和API参考介绍。
第一部分 基本概念
第1章 3D图形和OpenGL简介
1.1 计算机图形的简单历史回顾
1.1.1 进入电子时代
1.1.2 走向3D
1.2 3D图形技术和术语
1.2.1 变换(Transformation)和投影(Projection)
1.2.2 光栅化(Rasterization)
1.2.3 着色
1.2.4 纹理贴图
1.2.5 混合
1.2.6 将点连接起来
1.3 3D图形的常见用途
1.3.1 实时3D
1.3.2 非实时3D
1.3.3 着色器
1.4 3D编程的基本原则
1.4.1 并非工具包
1.4.2 坐标系统
1.4.3 投影:从3D到2D
1.5 总结
第2章 入门指南
2.1 什么是OpenGL?
2.1.1 标准的演化
2.1.2 OpenGL的未来
2.2 使用OpenG
L2.2.1 支持阵容
2.2.2 OpenGL API特性
2.2.3 OpenGL错误
2.2.4 确认版本
2.2.5 使用glHint获取线索
2.2.6 OpenGL状态机
2.3 建立Windows项目
2.3.1 包含路径
2.3.2 创建项目
2.3.3 添加文件
2.4 建立Mac OS X项目
2.4.1 自定义创建设置
2.4.2 创建新项目
2.4.3 框架、头文件和库
2.5 第一个三角形
2.5.1 要包含什么
2.5.2 启动GLUT
2.5.3 坐标系基础
2.5.4 完成设置
2.5.5 言归正传
2.6 加点儿活力!
2.6.1 特殊按键
2.6.2 刷新显示
2.6.3 简单的动画片
2.7 总结
第3章 基础渲染
3.1 基础图形管线
3.1.1 客户机-服务器
3.1.2 着色器
3.2 创建坐标系
3.2.1 正投影
3.2.2 透视投影
3.3 使用存储着色器
3.3.1 属性
3.3.2 Uniform值
3.4 将点连接起来
3.4.1 点和线
3.4.2 绘制3D三角形
3.4.3 单独的三角形
3.4.4 一个简单批次容器
3.4.5 不希望出现的几何图形
3.4.6 多边形偏移
3.4.7 裁剪
3.5 混合
3.5.1 组合颜色
3.5.2 改变混合方程式
3.5.3 抗锯齿
3.5.4 多重采样
3.6 小结
第4章 基础变换:初识向量/矩阵
4.1 本章是令人生畏的数学课吗
4.2 3D图形数学速成课
4.2.1 向量
4.2.2 矩阵
4.3 理解变换
4.3.1 视觉坐标
4.3.2 视图变换
4.3.3 模型变换
4.3.4 模型视图的二元性
4.3.5 投影变换
4.3.6 视口变换
4.4 模型视图矩阵
4.4.1 矩阵构造
4.4.2 运用模型视图矩阵
4.5 更多对象
4.5.1 使用三角形批次类
4.5.2 创建一个球体
4.5.3 创建一个花托
4.5.4 创建一个圆柱或圆锥
4.5.5 创建一个圆盘
4.6 投影矩阵
4.6.1 正投影
4.6.2 透视投影
4.6.3 模型视图投影矩阵
4.7 变换管线
4.7.1 使用矩阵堆栈
4.7.2 管理管线
4.7.3 加点调料
4.8 使用照相机和角色进行移动
4.8.1 角色帧
4.8.2 欧拉角:“卢克!请使用帧”
4.8.3 照相机管理
4.8.4 添加更多角色
4.8.5 关于光线
4.9 小结
第5章 基础纹理
5.1 原始图像数据
5.1.1 像素包装
5.1.2 像素图
5.1.3 包装的像素格式
5.1.4 保存像素
5.1.5 读取像素
5.2 载入纹理
5.2.1 使用颜色缓冲区
5.2.2 更新纹理
5.2.3 纹理对象
5.3 纹理应用
5.3.1 纹理坐标
5.3.2 纹理参数
5.3.3 综合运用
5.4 Mip贴图
5.4.1 Mip贴图过滤
5.4.2 生成Mip层
5.4.3 活动的Mip贴图
5.5 各向异性过滤
5.6 纹理压缩
5.6.1 压缩纹理
5.6.2 加载压缩纹理
5.6.3 最后一个示例
5.7 小结
第6章 跳出“盒子”:非存储着色器
6.1 初识OpenGL着色语言
6.1.1 变量和数据类型
6.1.2 存储限定符
6.1.3 真正的着色器
6.1.4 编译、绑定和连接
6.1.5 使用着色器
6.1.6 Provoking Vertex
6.2 着色器统一值
6.2.1 寻找统一值
6.2.2 设置标量和向量统一值
6.2.3 设置统一数组
6.2.4 设置统一矩阵
6.2.5 平面着色器
6.3 内建函数
6.3.1 三角函数
6.3.2 指数函数
6.3.3 几何函数
6.3.4 矩阵函数
6.3.5 向量相关函数
6.3.6 常用函数
6.4 模拟光线
6.4.1 简单漫射光
6.4.2 点光源漫反射着色器
6.4.3 ADS光照模型
6.4.4 Phong着色
6.5 访问纹理
6.5.1 只有纹理单元
6.5.2 照亮纹理单元
6.5.3 丢弃片段
6.5.4 卡通着色(Cell Shading)--将纹理单元作为光线
6.6 小结
第7章 纹理高级知识
7.1 矩形纹理
7.1.1 加载矩形纹理
7.1.2 使用矩形纹理
7.2 立方体贴图
7.2.1 加载立方体贴图
7.2.2 创建天空盒
7.2.3 创建反射
7.3 多重纹理
7.3.1 多重纹理坐标
7.3.2 多重纹理示例
7.4 点精灵(点块纹理)
7.4.1 使用点
7.4.2 点大小
7.4.3 综合运用
7.4.4 点参数
7.4.5 异形点
7.4.6 点的旋转
7.5 纹理数组
7.5.1 加载2D纹理数组
7.5.2 纹理数组索引
7.5.3 访问纹理数组
7.6 纹理代理
7.7 小结
第二部分 深入探索
第8章 缓冲区对象:存储尽在掌握
8.1 缓冲区
8.1.1 创建自己的缓冲区
8.1.2 填充缓冲区
8.1.3 像素缓冲区对象
8.1.4 缓冲区对象
8.2 帧缓冲区对象,摆脱窗口的限制
8.2.1 如何使用FBO
8.2.2 渲染缓冲区对象
8.2.3 绘制缓冲区
8.2.4 帧缓冲区的完整性
8.2.5 在帧缓冲区中复制数据
8.2.6 FBO综合运用
8.3 渲染到纹理
8.4 小结
第9章 高级缓冲区:超越基础水平
9.1 获得数据
9.1.1 映射缓冲区
9.1.2 复制缓冲区
9.2 控制像素着色器表现,映射片段输出
9.3 新一代硬件的新格式
9.3.1 浮点--最终的真正精确
9.3.2 多重采样
9.3.3 整数
9.3.4 sRGB
9.3.5 纹理压缩
9.4 小结
第10章 片段操作:管线的终点
10.1 裁剪--将几何图形剪切到希望的大小
10.2 多重采样
10.2.1 样本覆盖
10.2.2 样本遮罩
10.2.3 综合运用
10.3 模板操作
10.4 深度测试
10.4.1 深度截取
10.5 进行混合
10.5.1 混合方程式
10.5.2 混合函数
10.5.3 综合运用
10.6 抖动
10.7 逻辑操作
10.8 遮罩输出
10.8.1 颜色
10.8.2 深度
10.8.3 模板
10.8.4 用途
10.9 小结
第11章 高级着色器应用
11.1 高级顶点着色器
11.1.1 在顶点着色器中进行物理模拟
11.2 几何着色器
11.2.1 直通几何着色器
11.2.2 在应用程序中使用几何着色器
11.2.3 在几何着色器中丢弃几何图形
11.2.4 在几何着色器中修改几何图形
11.2.5 在几何着色器中生成几何图形
11.2.6 在几何着色器中改变图元类型
11.2.7 由几何着色器引入的新图元类型
11.3 高级片段着色器
11.3.1 片段着色器中的后期处理--颜色校正
11.3.2 片段着色器中的后期处理--卷积
11.3.3 在片段着色器中生成图像数据
11.3.4 在片段着色器中丢弃工作
11.3.5 逐片段控制深度
11.4 更高级的着色器函数
11.4.1 插值和存储限定符
11.4.2 高级内建函数
11.5 统一缓冲区对象
11.5.1 建立统一块
11.6 小结
第12章 高级几何图形管理
12.1 查询功能--收集OpenGL管线相关信息
12.1.1 准备查询
12.1.2 发出查询
12.1.3 取回查询结果
12.1.4 使用查询结果
12.1.5 让OpenGL决定
12.1.6 测量执行命令所需时间
12.2 在GPU内存中存储数据
12.2.1 使用缓冲区存储顶点数据
12.2.2 在缓冲区中保存顶点索引
12.3 使用顶点数组对象来组织缓冲区
12.4 高效地绘制大量几何图形
12.4.1 组合绘制函数
12.4.2 使用图元重启对几何图形进行组合
12.4.3 实例渲染
12.4.4 自动获得数据
12.5 存储变换的顶点--变换反馈
12.5.1 变换反馈
12.5.2 关闭光栅化
12.5.3 使用图元查询对顶点进行计数
12.5.4 使用图元查询的结果
12.5.5 变换反馈的应用实例
12.6 裁剪并确定绘制内容
12.6.1 裁剪距离--自定义裁剪空间
12.7 在OpenGL开始绘制时进行同步
12.8 小结
第三部分 特定平台应用
第13章 Windows上的OpenGL
13.1 Windows中的OpenGL实现
13.1.1 微软的OpenGL
13.1.2 现代图形驱动程序
13.1.3 扩展OpenGL
13.1.4 WGL扩展
13.2 基本窗口渲染
13.2.1 GDI设备环境
13.2.2 像素格式
13.2.3 OpenGL渲染环境
13.3 综合运用
13.3.1 创建窗口
13.4 全屏渲染
13.5 双重缓冲
13.5.1 消除视觉撕裂
13.6 小结
第14章 OS X上的OpenGL
14.1 OpenGL在Mac上的4种接口
14.2 在OpenGL中使用Cocoa
14.2.1 创建一个Cocoa程序
14.2.2 综合运用
14.2.3 双缓冲还是单缓冲
14.2.4 球体世界
14.3 全屏渲染
14.3.1 在Cocoa中进行全屏显示
14.4 CGL
14.4.1 同步帧速率
14.4.2 提高填充性能
14.4.3 多线程OpenGL
14.5 小结
第15章 Linux上的OpenGL
15.1 基础知识
15.1.1 简史
15.1.2 什么是X Window
15.2 入门讲解
15.2.1 检查OpenGL
15.2.2 设置Mesa
15.2.3 设置Mesa硬件驱动程序
15.2.4 设置GLUT 和 GLEW
15.2.5 创建OpenGL应用程序
15.3 GLX--X Window的接口
15.3.1 显示和X Window
15.3.2 配置管理和显示效果
15.3.3 窗口和渲染表面
15.3.4 OpenGL和GLX扩展
15.3.5 环境管理
15.3.6 同步
15.3.7 GLX查询
15.3.8 综合运用
15.4 小结
第16章 OpenGL ES:移动设备上的OpenGL
16.1 精简的OpenGL
16.1.1 ES指什么
16.1.2 历史概述
16.2 版本选择
16.2.1 ES 2.0
16.3 ES环境
16.3.1 应用程序设计的注意事项
16.3.2 有限环境的处理
16.3.3 定点数学
16.4 EGL: 新的窗口环境
16.4.1 EGL显示
16.4.2 创建窗口
16.4.3 环境管理
16.4.4 呈现缓冲区和渲染同步
16.4.5 更多关于EGL的内容
16.5 处理嵌入式环境
16.5.1 流行的操作系统
16.5.2 供应商特定扩展
16.5.3 个人玩家
16.6 苹果掌上平台
16.6.1 设置iPhone项目
16.6.2 移植到iPhone
16.7 小结
附录A 更多阅读建议
附录B 词汇表
附录C (核心)OpenGL 3.3参考
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必下载pdf阅读器
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
同类热门
类似软件
opengl编程指南(原书第7版)22.65M523人在用opengl是图形硬件的一种软件接口,这个接口包含的函数超过700个,这些函数可以用于指定物体和操作,创建交互式的三维应用程序。这里小编为广大网友带来了opengl编程指南第七版pdf下载,作者: [美] Dave Shreiner,译者: 李军/徐波
查看opengl es 2.0编程指南1.96M389人在用opengl es 2.0编程指南是一本pdf中文版的电子图书,已经附带了pdf阅读器在软件包中,用户即下即用。OpenGL ES 2.0是本书中要讲的API,目标是讲述完整的细节(核心和扩展),给出怎么使用的例子,讨论各种优化技术,读完本书希望能你能懂
查看OpenGL ES 3.x 游戏开发(下卷)15.01M214人在用OpenGL ES 3.x 游戏开发(下卷)是一本基于OpenGL ES 3.x软件而编写的游戏开发设计指导书籍,由吴亚峰编著。全书组织上本着“起点低、终点高”的原则,内容涵盖了从学习OpenGL ES 3.x必知必会的基础知识到OpenGL ES 3.
查看热门标签
网友评论0人参与,0条评论
最新排行
d3.js数据可视化实战手册39.05M朱启pdf扫描版D3.js数据可视化实战手册是一本介绍如何利用D3.js来实现数据可视化的实战图书,由加拿大前端程序员朱启编著。通过学习本书,你将可以学到数据可视化的基本概念,JavaScript的函数式编程和D3的基础概念,书中还配有很多专业、高效、精准的示例、图示和
查看Android开发精要17.08MAndroid开发精要是由资深Android专家范怀宇编著的一本Android开发手册,本书详细介绍了高度抽象Android系统的设计理念和底层实现机制,全面概括Android实现原理的“要点”和实际开发中的“精华”,为开发高质量Android应用提供指
查看Android C++高级编程:使用NDK69.44M辛纳pdf扫描版 Android是一个完整的、开放的、免费的移动平台,该平台给移动应用开发者提供了无限的机会。但是如何才能更好的常握好呢?小编推荐大家阅读《android c++高级编程:使用NDK》,这是国内首本基于C++开发android应用书籍,由美国程序员辛
查看android板级支持与硬件相关子系统141.16Mandroid板级支持与硬件相关子系统是一本板级支持与硬件相关子系统书籍,由韩超编著。本书特别选定了Nexus One、Nexus S、Galaxy Nexus等几款手机作为参考平台。其中一个很大的优点就是以上几个平台都是Google认定的,具有典型性,
查看ansible权威指南 李松涛 pdf版171.37M高清扫描版 ansible权威指南是一本Ansible的权威指南,由李松涛,魏巍和甘捷三人共同编著。本书内容丰富翔实,涵盖Ansible基础、高级技法与定制化扩展、7个实战企业案例,以及Web自动化开发,解决入门简单、深入难问题。 作者在介绍新技术
查看启示录打造用户喜爱的产品15.77M启示录打造用户喜爱的产品是现代软件产品管理实践经验和理念的结合产物,由硅谷产品集团的创始人Marty Cagan发布。本书将在互联网时代如何才能打造用户喜爱的产品这一宗旨系统的分成了三个部分,每个部分包含若干个主题,这些主题独立成篇,读者可以根据兴趣选择
查看webrtc权威指南 原书第3版76.49Mpdf扫描版webrtc权威指南 原书第3版是一本WebRTC权威使用指南,由艾伦B.约翰斯顿编著。本书循序渐进地介绍了WebRTC,阐述了诸如本地媒体、信令等概念,并通过独立可运行的演示程序来介绍对等连接。此外,还详细描述了浏览器媒体协商过程,如何使用Wiresh
查看量价分析从入门到精通35.25Mpdf扫描版量价分析从入门到精通是由机械工业出版社的杨磊先生编着的一本股市量价关系分析图书。该书充分融合了国内外62种量价形态,让用户洞悉股票涨跌规律,根据盘面异动,决定自己的买卖操作。能够独立解决股民在股票涨跌盘面异动等问题上遇到的基础难题,高效、实用!量价分析从
查看学通ASP.NET的24堂课81.47M房大伟pdf扫描版ASP.NET是微软公司推出的一款新一代动态web应用程序开发平台,具有方便性,灵活,性能优,生产效率高,安全性高等特性,是目前主流的网络编程工具,但如何更好的快速掌握呢?小编这里推荐用户使用学通ASP.NET的24堂课,这是一本ASP.NET技术的学习
查看尼康d300s说明书9.95MPDF中文版本站免费提供尼康d300s说明书下载,版本为PDF中文版,方便用户更清晰直白的进行阅读观看。尼康d300s说明书内包含了一系列关于同名相机的操作指南、功能特点、新增功能等等,用户再也不用担心自己买过来的相机不会用了。由于文件是PDF格式,请确保电脑已经安
查看写给大家看的c语言书(第2版)41.09M佩里pdf扫描版写给大家看的c语言书(第2版)是一部别开生面、与众不同的C语言经典入门著作,由美国计算机编程专家佩里编著。本书内容丰富,将C语言的基础知识、必备的实战技能和宝贵编程经验尽数道来。没有云山雾罩,没有前因后果的行话,没有艰深而且不必要的内部技术细节,没有沉闷
查看SQL Server 2008高级程序设计99.46MPDF中文版SQL Server 2008高级程序设计是一本pdf中文版的高清电子书,全书首先介绍了sql2008的新功能,然后在更详实的示例代码的引导下全面深入地展开论述,讨论了如何编写复杂查询,构建各种数据结构以及提高应用程序性能,还讲述了如何管理高级脚本和数据
查看