OpenGL超级宝典

OpenGL超级宝典
8.2
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美]
出版社: 人民邮电出版社
2012-05
版次: 5
ISBN: 9787115274564
定价: 108.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 698页
字数: 1259千字
正文语种: 简体中文
原版书名: OpenGL SuperBible: Comprehensive Tutorial and Reference (5th Edition)
  •   《OpenGL超级宝典(第5版)》是OpenGL及3D图形编程的入门指南,涵盖了使用版本的OpenGL进行编程所需要的主要知识。全书分三部分,共16章,另有3个附录。部分包括第1章到第7章,介绍如何构建一个使用OpenGL的程序、如何设置3D渲染环境,以及如何创建基本对象和光线并对他们进行着色。然后深入研究如何使用OpenGL,并向读者介绍GLSL,以及如何创建自己的着色器。第二部分包括第8章到第12章,将进行更深入的研究,而懂得如何应用这些高级特性将使读者业余3D玩家的水平。这一部分不仅能够使我们掌握更多的可视化效果,同时也考虑了性能表现。第三部分包括第13章到第16章,着重介绍OpenGL如何支持和连接Windows、MacOSX、Linux和掌上设备。附录部分给出了更多阅读建议、术语表和API参考介绍。  《OpenGL超级宝典(第5版)》适合希望精通OpenGL以便对图形编程和3D图形知识进行扩展的程序员阅读,也可以帮助经验丰富的OpenGL程序员学习如何移植自己的应用程序。本书既可以作为学习OpenGL的教材,也可以作为随时查阅的参考手册。 Richard S. Wright, Jr.是Software Bisque公司的资深软件工程师,在这家公司使用OpenGL开发多媒体宇航和天文软件。他曾经是OpenGL ARB在实时3D领域的代表人物,编写了大量基于OpenGL的游戏、科学与医学应用程序、数据库可视化工具和教育软件。 Nicholas Haemel在ATI和AMD的8年中引导了3D图形硬件和软件结构设计与开发,并对OpenGL的3.0、3.1、3.2和3.3标准作出了贡献。 Graham Sellers是AMD的OpenGL小组的一位管理者,领导着一个OpenGL软件开发团队,致力于开发AMD的OpenGL驱动程序。他是ARB中的AMD代表,并对核心OpenGL 3.2、3.3和4.0规范作出了贡献。 Benjamin Lipchak是苹果公司的软件工程主管,领导着一个致力于图形开发技术和标准测试程序的团队,并负责iPhone和iPod touch的OpenGL ES一致性测试。他曾经在AMD管理一个OpenGL ES驱动程序小组,并领导着Khronos的OpenGL生态系统小组,在那里他创建了OpenGL SDK和OpenGL Pipeline等刊物。 第一部分 基本概念第1章 3D图形和OpenGL简介1.1 计算机图形的简单历史回顾1.1.1 进入电子时代1.1.2 走向3D1.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 实时3D1.3.2 非实时3D1.3.3 着色器1.4 3D编程的基本原则1.4.1 并非工具包1.4.2 坐标系统1.4.3 投影:从3D到2D1.5 总结第2章 入门指南2.1 什么是OpenGL?2.1.1 标准的演化2.1.2 OpenGL的未来2.2 使用OpenGL2.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 启动GLUT2.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 Vertex6.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 如何使用FBO8.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 sRGB9.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上的OpenGL13.1 Windows中的OpenGL实现13.1.1 微软的OpenGL13.1.2 现代图形驱动程序13.1.3 扩展OpenGL13.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上的OpenGL14.1 OpenGL在Mac上的4种接口14.2 在OpenGL中使用Cocoa14.2.1 创建一个Cocoa程序14.2.2 综合运用14.2.3 双缓冲还是单缓冲14.2.4 球体世界14.3 全屏渲染14.3.1 在Cocoa中进行全屏显示14.4 CGL14.4.1 同步帧速率14.4.2 提高填充性能14.4.3 多线程OpenGL14.5 小结第15章 Linux上的OpenGL15.1 基础知识15.1.1 简史15.1.2 什么是X Window15.2 入门讲解15.2.1 检查OpenGL15.2.2 设置Mesa15.2.3 设置Mesa硬件驱动程序15.2.4 设置GLUT 和 GLEW15.2.5 创建OpenGL应用程序15.3 GLX--X Window的接口15.3.1 显示和X Window15.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:移动设备上的OpenGL16.1 精简的OpenGL16.1.1 ES指什么16.1.2 历史概述16.2 版本选择16.2.1 ES 2.016.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 移植到iPhone16.7 小结附录A 更多阅读建议附录B 词汇表附录C (核心)OpenGL 3.3参考
  • 内容简介:
      《OpenGL超级宝典(第5版)》是OpenGL及3D图形编程的入门指南,涵盖了使用版本的OpenGL进行编程所需要的主要知识。全书分三部分,共16章,另有3个附录。部分包括第1章到第7章,介绍如何构建一个使用OpenGL的程序、如何设置3D渲染环境,以及如何创建基本对象和光线并对他们进行着色。然后深入研究如何使用OpenGL,并向读者介绍GLSL,以及如何创建自己的着色器。第二部分包括第8章到第12章,将进行更深入的研究,而懂得如何应用这些高级特性将使读者业余3D玩家的水平。这一部分不仅能够使我们掌握更多的可视化效果,同时也考虑了性能表现。第三部分包括第13章到第16章,着重介绍OpenGL如何支持和连接Windows、MacOSX、Linux和掌上设备。附录部分给出了更多阅读建议、术语表和API参考介绍。  《OpenGL超级宝典(第5版)》适合希望精通OpenGL以便对图形编程和3D图形知识进行扩展的程序员阅读,也可以帮助经验丰富的OpenGL程序员学习如何移植自己的应用程序。本书既可以作为学习OpenGL的教材,也可以作为随时查阅的参考手册。
  • 作者简介:
    Richard S. Wright, Jr.是Software Bisque公司的资深软件工程师,在这家公司使用OpenGL开发多媒体宇航和天文软件。他曾经是OpenGL ARB在实时3D领域的代表人物,编写了大量基于OpenGL的游戏、科学与医学应用程序、数据库可视化工具和教育软件。 Nicholas Haemel在ATI和AMD的8年中引导了3D图形硬件和软件结构设计与开发,并对OpenGL的3.0、3.1、3.2和3.3标准作出了贡献。 Graham Sellers是AMD的OpenGL小组的一位管理者,领导着一个OpenGL软件开发团队,致力于开发AMD的OpenGL驱动程序。他是ARB中的AMD代表,并对核心OpenGL 3.2、3.3和4.0规范作出了贡献。 Benjamin Lipchak是苹果公司的软件工程主管,领导着一个致力于图形开发技术和标准测试程序的团队,并负责iPhone和iPod touch的OpenGL ES一致性测试。他曾经在AMD管理一个OpenGL ES驱动程序小组,并领导着Khronos的OpenGL生态系统小组,在那里他创建了OpenGL SDK和OpenGL Pipeline等刊物。
  • 目录:
    第一部分 基本概念第1章 3D图形和OpenGL简介1.1 计算机图形的简单历史回顾1.1.1 进入电子时代1.1.2 走向3D1.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 实时3D1.3.2 非实时3D1.3.3 着色器1.4 3D编程的基本原则1.4.1 并非工具包1.4.2 坐标系统1.4.3 投影:从3D到2D1.5 总结第2章 入门指南2.1 什么是OpenGL?2.1.1 标准的演化2.1.2 OpenGL的未来2.2 使用OpenGL2.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 启动GLUT2.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 Vertex6.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 如何使用FBO8.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 sRGB9.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上的OpenGL13.1 Windows中的OpenGL实现13.1.1 微软的OpenGL13.1.2 现代图形驱动程序13.1.3 扩展OpenGL13.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上的OpenGL14.1 OpenGL在Mac上的4种接口14.2 在OpenGL中使用Cocoa14.2.1 创建一个Cocoa程序14.2.2 综合运用14.2.3 双缓冲还是单缓冲14.2.4 球体世界14.3 全屏渲染14.3.1 在Cocoa中进行全屏显示14.4 CGL14.4.1 同步帧速率14.4.2 提高填充性能14.4.3 多线程OpenGL14.5 小结第15章 Linux上的OpenGL15.1 基础知识15.1.1 简史15.1.2 什么是X Window15.2 入门讲解15.2.1 检查OpenGL15.2.2 设置Mesa15.2.3 设置Mesa硬件驱动程序15.2.4 设置GLUT 和 GLEW15.2.5 创建OpenGL应用程序15.3 GLX--X Window的接口15.3.1 显示和X Window15.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:移动设备上的OpenGL16.1 精简的OpenGL16.1.1 ES指什么16.1.2 历史概述16.2 版本选择16.2.1 ES 2.016.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 移植到iPhone16.7 小结附录A 更多阅读建议附录B 词汇表附录C (核心)OpenGL 3.3参考
查看详情
好书推荐 / 更多
OpenGL超级宝典
荷马史诗中的生与死
[英]加斯帕·格里芬、Jasper、Griffin 著
OpenGL超级宝典
票证里的中国
李三台 著
OpenGL超级宝典
圣天秤星
彼得·汉密尔顿(Peter F.Hamilton)、段宗忱 译
OpenGL超级宝典
追寻记忆的痕迹:新心智科学的开创历程(诺贝尔奖得主埃里克·坎德尔作品)
[美]埃里克·坎德尔 著;喻柏雅 译
OpenGL超级宝典
创世:梵蒂冈博物馆全品珍藏(修订升级版)
[德]安雅·格雷贝 著;郑柯 译
OpenGL超级宝典
白鹭
德里克·沃尔科特(Derck Walcott) 著;程一身 译
OpenGL超级宝典
东京城市更新经验:城市再开发重大案例研究
同济大学建筑与城市空间研究所、株式会社日本设计 著
OpenGL超级宝典
黎曼猜想漫谈
卢昌海 著
OpenGL超级宝典
鸟的魔力:一部绚烂的鸟类文化史
[英]西莉亚·费希尔 著;王晨 译
OpenGL超级宝典
隐身大师
[法]萨拉·卡明斯基 著;廖晓玮 译
OpenGL超级宝典
莫奈手稿
[法]克劳德·莫奈
OpenGL超级宝典
无止境的逃离
[土耳其]哈坎·甘迪