OpenGL超级宝典

OpenGL超级宝典
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] , ,
2012-05
版次: 5
ISBN: 9787115274564
定价: 108.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 698页
字数: 1259千字
正文语种: 简体中文
原版书名: OpenGL SuperBible: Comprehensive Tutorial and Reference (5th Edition)
211人买过
  •   《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 走向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 使用OpenGL
    2.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参考
  • 内容简介:
      《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 走向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 使用OpenGL
    2.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参考
查看详情
相关图书 / 更多
OpenGL超级宝典
OpenCV轻松入门:面向Python(第2版)
李立宗
OpenGL超级宝典
OpenShift开发指南(原书第2版)
[美]约书亚·伍德 (美)布赖恩·坦努斯 著
OpenGL超级宝典
OpenCV 4.5计算机视觉开发实战:基于Python
朱文伟 李建英
OpenGL超级宝典
OpenCV计算机视觉项目实战(Python版)
洪锦魁
OpenGL超级宝典
OpenHarmony轻量设备开发理论与实战
齐耀龙
OpenGL超级宝典
OpenCV图像处理技术(微课版)
傅贤君
OpenGL超级宝典
OpenCV入门与技术实践
罗刚
OpenGL超级宝典
OpenCV图像处理实战
贾睿 主编;北京博海迪信息科技有限公司 组编
OpenGL超级宝典
OpenHarmony嵌入式系统原理与应用——基于RK2206芯片(微课视频版)
薛小铃
OpenGL超级宝典
OpenFOAM多物理场计算基础与建模
杨文明 编著
OpenGL超级宝典
OpenStack云计算平台搭建与管理(微课版)
姚骏屏 何桂兰
OpenGL超级宝典
OpenCV 4.0+Python机器学习与计算机视觉实战
[印]梅努阿·吉沃吉安 著;黄进青 译
您可能感兴趣 / 更多
OpenGL超级宝典
宇宙视觉史:从宇宙大爆炸到时间的尽头
[美]查尔斯·刘 著;高爽 译者;[美]马克西姆· 马洛维奇科 绘;未读 出品
OpenGL超级宝典
写出我心 普通人如何通过写作表达自己(平装本)
[美]娜塔莉·戈德堡(Natalie Goldberg)
OpenGL超级宝典
写出我心3 写作疗愈的真正秘密
[美]娜塔莉·戈德堡(Natalie Goldberg)
OpenGL超级宝典
神套路:为什么我们总被带节奏(狂热与网红时代醍醐灌顶之作,教给普通人安身立命的不二法门!)
[美]阿里·阿莫萨维 著;[哥伦比亚]亚历杭德罗·希拉尔多 绘
OpenGL超级宝典
阿伦森自传
[美]埃利奥特·阿伦森(Elliot Aronson) 著;沈捷 译;湛庐文化 出品
OpenGL超级宝典
街头官僚:公共服务中的个人困境
[美]迈克尔·李普斯基(Michael Lipsky)
OpenGL超级宝典
史前至蒙古帝国时期的内欧亚大陆史
[美]大卫·克里斯蒂安 著;潘玲 译;杨建华 校
OpenGL超级宝典
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
OpenGL超级宝典
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
OpenGL超级宝典
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
OpenGL超级宝典
自律我也能做到(全9册)
[美]康妮·科维尔·米勒 著;[阿根廷]维多利亚·阿萨纳利 绘
OpenGL超级宝典
你在等什么?
[美]斯科特·明钦 著;[中]易万 译;[美]马特 ·斐兰 绘