OpenGL编程指南(原书第8版)
推荐语
译者序
前言
第1章 OpenGL概述
1.1 什么是OpenGL
1.2 初识OpenGL程序
1.3 OpenGL语法
1.4 OpenGL渲染管线
1.4.1 准备向OpenGL传输数据
1.4.2 将数据传输到OpenGL
查看完整
译者序
前言
第1章 OpenGL概述
1.1 什么是OpenGL
1.2 初识OpenGL程序
1.3 OpenGL语法
1.4 OpenGL渲染管线
1.4.1 准备向OpenGL传输数据
1.4.2 将数据传输到OpenGL
查看完整
施莱尔(Dave Shreiner),ARM公司的图形与GPU计算部门主管,自从OpenGL诞生之日起就积极地参与到它的开发当中。他创建了个OpenGL的商业培训课程,并且拥有超过20年的OpenGL编程教学经验。
Graham Sellers,《OpenGL超级宝典》的联合作者,在AMD负责OpenGL的软件开发。他同时还是很多OpenGL特性规范的作者,并且协助将OpenGL ES移植到桌面计算机平台。
John Kessenich,OpenGL着色语言的规范编者,LunarG公司的顾问,负责GLSL的编译器技术。他在3DLabs和Intel帮助下开发了OpenGL 2.0和OpenGL ES 2.0。
Bill Licea-Kane,AMD的技术部门核心成员,《OpenG…
查看完整
Graham Sellers,《OpenGL超级宝典》的联合作者,在AMD负责OpenGL的软件开发。他同时还是很多OpenGL特性规范的作者,并且协助将OpenGL ES移植到桌面计算机平台。
John Kessenich,OpenGL着色语言的规范编者,LunarG公司的顾问,负责GLSL的编译器技术。他在3DLabs和Intel帮助下开发了OpenGL 2.0和OpenGL ES 2.0。
Bill Licea-Kane,AMD的技术部门核心成员,《OpenG…
查看完整
《华章程序员书库:OpenGL编程指南(原书第8版)》是由Khronos小组编写的官方指南,是OpenGL领域的专业著作,素有“OpenGL”的美誉。第8版针对OpenGL4.3版本全方位阐释OpenGL的各种技术细节、方法和佳实践,帮助程序员走上OpenGL专家之路。
《华章程序员书库:OpenGL编程指南(原书第8版)》共12章:第1章概述OpenGL主要特性和功能;第2章讨论OpenGL中主要的特性——可编程着色器;第3章介绍使用OpenGL进行几何体绘制的各种方法,以及一些可以让渲染更为高效的优化手段;第4章阐释OpenGL对于颜色的处理过程,包括像素的处理、缓存的管理以及像素处理相关的渲染技术;第5章介绍在一个二维计算机屏幕上表现三维场景的操作细节;第6章讨论将几何模型与图像结合来创建真实的、高质量的三维模型的方法;第7章介绍计算机图形的光照效果模拟方法;第8章…
查看完整
《华章程序员书库:OpenGL编程指南(原书第8版)》共12章:第1章概述OpenGL主要特性和功能;第2章讨论OpenGL中主要的特性——可编程着色器;第3章介绍使用OpenGL进行几何体绘制的各种方法,以及一些可以让渲染更为高效的优化手段;第4章阐释OpenGL对于颜色的处理过程,包括像素的处理、缓存的管理以及像素处理相关的渲染技术;第5章介绍在一个二维计算机屏幕上表现三维场景的操作细节;第6章讨论将几何模型与图像结合来创建真实的、高质量的三维模型的方法;第7章介绍计算机图形的光照效果模拟方法;第8章…
查看完整
推荐语
译者序
前言
第1章 OpenGL概述
1.1 什么是OpenGL
1.2 初识OpenGL程序
1.3 OpenGL语法
1.4 OpenGL渲染管线
1.4.1 准备向OpenGL传输数据
1.4.2 将数据传输到OpenGL
1.4.3 顶点着色
1.4.4 细分着色
1.4.5 几何着色
1.4.6 图元装配
1.4.7 剪切
1.4.8 光栅化
1.4.9 片元着色
1.4.1 0逐片元的操作
1.5 第一个程序:深入分析
1.5.1 进入main()函数
1.5.2 OpenGL的初始化过程
1.5.3 第一次使用OpenGL进行渲染
第2章 着色器基础
2.1 着色器与OpenGL
2.2 OpenGL的可编程管线
2.3 OpenGL着色语言概述
2.3.1 使用GLSL构建着色器
2.3.2 存储限制符
2.3.3 语句
2.3.4 计算的不变性
2.3.5 着色器的预处理器
2.3.6 编译器的控制
2.3.7 全局着色器编译选项
2.4 数据块接口
2.4.1 uniform块
2.4.2 指定着色器中的uniform块
2.4.3 从应用程序中访问uniform块
2.4.4 buffer块
2.4.5 in/out块
2.5 着色器的编译
2.5.1 我们的Load Shaders函数
2.6 着色器子程序
2.6.1 GLSL的子程序设置
2.6.2 选择着色器子程序
2.7 独立的着色器对象
第3章 OpenGL绘制方式
3.1 OpenGL图元
3.1.1 点
3.1.2 线、条带与循环线
3.1.3 三角形、条带与扇面
3.2 OpenGL缓存数据
3.2.1 创建与分配缓存
3.2.2 向缓存输入和输出数据
3.2.3 访问缓存的内容
3.2.4 丢弃缓存数据
3.3 顶点规范
3.3.1 深入讨论Vertex Attrib-Pointer
3.3.2 静态顶点属性的规范
3.4 OpenGL的绘制命令
3.4.1 图元的重启动
3.5 多实例渲染
3.5.1 多实例的顶点属性
3.5.2 在着色器中使用实例计数器
3.5.3 多实例方法的回顾
第4章 颜色、像素和帧缓存
4.1 基本颜色理论
4.2 缓存及其用途
4.2.1 缓存的清除
4.2.2 缓存的掩码
4.3 颜色与OpenGL
4.3.1 颜色的表达与OpenGL
4.3.2 顶点颜色
4.3.3 光栅化
4.4 多重采样
4.4.1 采样着色
4.5 片元的测试与操作
4.5.1 剪切测试
4.5.2 多重采样的片元操作
4.5.3 模板测试
4.5.4 模板的例子
4.5.5 深度测试
4.5.6 融混
4.5.7 融混参数
4.5.8 控制融混的参数
4.5.9 融混方程
4.5.10 抖动
4.5.11 逻辑操作
4.5.12 遮挡查询
4.5.13 条件渲染
4.6 逐图元的反走样
4.6.1 线段的反走样
4.6.2 多边形的反走样
4.7 帧缓存对象
4.7.1 渲染缓存
4.7.2 创建渲染缓存的存储空间
4.7.3 帧缓存附件
4.7.4 帧缓存的完整性
4.7.5 帧缓存的无效化
4.8 多重渲染缓存的同步写入
4.8.1 选择颜色缓存来进行读写操作
4.8.2 双源融混
4.9 像素数据的读取和拷贝
4.1 0拷贝像素矩形
第5章 视口变换、剪切与反馈
5.1 观察视图
5.1.1 视图模型
5.1.2 相机模型
5.1.3 正交视图模型
5.2 用户变换
5.2.1 矩阵乘法的回顾
5.2.2 齐次坐标
5.2.3 线性变换与矩阵
5.2.4 法线变换
5.2.5 OpenGL矩阵
5.3 OpenGL变换
5.3.1 高级技巧:用户剪切
5.4 trans form feedback
5.4.1 transformfeedback对象
5.4.2 transformfeedback缓存
5.4.3 配置transformfeedback的变量
5.4.4 transformfeedback的启动和停止
5.4.5 transformfeedback的示例:粒子系统
第6章 纹理
6.1 纹理映射
6.2 基本纹理类型
6.3 创建和初始化纹理
6.3.1 纹理格式
6.4 代理纹理
6.5 设置纹理数据
6.5.1 显式设置纹理数据
6.5.2 使用PixelUnpack缓存
6.5.3 从帧缓存拷贝数据
6.5.4 从文件加载图像
6.5.5 查询纹理数据
6.5.6 纹理数据布局
6.6 采样器对象
6.6.1 采样器参数
6.7 使用纹理
6.7.1 纹理坐标
6.7.2 组织纹理数据
6.7.3 使用多重纹理
6.8 复杂纹理类型
6.8.1 3维纹理
6.8.2 数组纹理
6.8.3 立方体映射纹理
6.8.4 阴影采样器
6.8.5 深度模板纹理
6.8.6 缓存纹理
6.9 纹理视图
6.1 0压缩纹理
6.1 1滤波
6.1 1.1 线性滤波
6.1 1.2 使用和生成mipmap
6.1 1.3 计算mipmap级别
6.1 1.4 mipmap细节层次控制
6.1 2高级纹理查询函数
6.1 2.1 显式细节层次
6.1 2.2 显式梯度设置
6.1 2.3 偏移后的纹理获取
6.1 2.4 投影纹理
6.1 2.5 着色器中的纹理查询
6.1 2.6 收集纹素
6.1 2.7 合并特殊函数
6.1 3点精灵
6.1 3.1 带纹理的点精灵
6.1 3.2 控制点的外观
6.1 4渲染到纹理贴图
6.1 4.1 丢弃已渲染数据
6.1 5本章总结
6.1 5.1 纹理回顾
6.1 5.2 纹理的最好实践
第7章 光照与阴影
7.1 光照介绍
7.2 经典光照模型
7.2.1 不同光源类型的片元着色器
7.2.2 将计算移到顶点着色器
7.2.3 多个光源和材质
7.2.4 光照坐标系统
7.2.5 经典光照模型的局限
7.3 光照模型进阶
7.3.1 半球光照
7.3.2 基于图像的光照
7.3.3 球面光照
7.4 阴影映射
7.4.1 创建一张阴影贴图
7.4.2 使用阴影贴图
第8章 程序式纹理
8.1 程序式纹理
8.1.1 规则的花纹
8.1.2 玩具球
8.1.3 晶格
8.1.4 程序式着色方法的总结
8.2 凹凸贴图映射
8.2.1 应用程序设置
8.2.2 顶点着色器
8.2.3 片元着色器
8.2.4 法线贴图
8.3 程序式纹理的反走样
8.3.1 走样的来源
8.3.2 避免走样问题
8.3.3 提高分辨率
8.3.4 高频率的反走样
8.3.5 频率截断
8.3.6 程序式反走样的总结
8.4 噪声
8.4.1 噪声的定义
8.4.2 噪声纹理
8.4.3 权衡
8.4.4 一个简单的噪声着色器
8.4.5 湍流
8.4.6 大理石
8.4.7 花岗岩
8.4.8 木纹
8.4.9 噪声的总结
8.5 更多信息
第9章 细分着色器
9.1 细分着色器
9.2 细分面片
9.3 细分控制着色器
9.3.1 生成输出面片的顶点
9.3.2 细分控制着色器的变量
9.3.3 细分的控制
9.4 细分计算着色器
9.4.1 设置图元生成域
9.4.2 设置生成图元的面朝向
9.4.3 设置细分坐标的间隔
9.4.4 更多的细分计算着色器layout选项
9.4.5 设置顶点的位置
9.4.6 细分计算着色器的变量
9.5 细分实例:茶壶
9.5.1 处理面片输入顶点
9.5.2 计算茶壶的细分坐标
9.6 更多的细分技术
9.6.1 视口相关的细分
9.6.2 细分的共享边与裂缝
9.6.3 置换贴图映射
第10章 几何着色器
10.1 创建几何着色器
10.2 几何着色器的输入和输出
10.2.1 几何着色器的输入
10.2.2 特殊的几何着色器图元
10.2.3 几何着色器的输出
10.3 产生图元
10.3.1 几何体的裁减
10.3.2 几何体的扩充
10.4 transformfeedback高级篇
10.4.1 多重输出流
10.4.2 图元查询
10.4.3 使用transformfeedback的结果
10.5 几何着色器的多实例化
10.6 多视口与分层渲染
10.6.1 视口索引
10.6.2 分层渲染
10.7 本章小结
10.7.1 几何着色器回顾
10.7.2 几何着色器的经验谈
第11章 内存
11.1 使用纹理存储通用数据
11.1.1 将纹理绑定到图像单元
11.1.2 图像数据的读取和写入
11.2 着色器存储缓存对象
11.2.1 写入结构化数据
11.3 原子操作和同步
11.3.1 图像的原子操作
11.3.2 缓存的原子操作
11.3.3 同步对象
11.3.4 图像限定符和屏障
11.3.5 高性能的原子计数器
11.4 示例
11.4.1 顺序无关的透明
第12章 计算着色器
12.1 概述
12.2 工作组及其执行
12.2.1 知道工作组的位置
12.3 通信与同步
12.3.1 通信
12.3.2 同步
12.4 示例
12.4.1 物理模拟
12.4.2 图像处理
12.5 本章总结
12.5.1 计算着色器回顾
12.5.2 计算着色器的最佳实践
附录A GLUT基础知识
附录B OpenGLES与WebGL
附录C 内置GLSL变量与函数
附录D 状态变量
附录E 齐次坐标与变换矩阵
附录F OpenGL与窗口系统
附录G 纹理、帧缓存与渲染缓存的浮点格式
附录H OpenGL程序的调试与优化
附录I 缓存对象的布局
术语表
^ 收 起
译者序
前言
第1章 OpenGL概述
1.1 什么是OpenGL
1.2 初识OpenGL程序
1.3 OpenGL语法
1.4 OpenGL渲染管线
1.4.1 准备向OpenGL传输数据
1.4.2 将数据传输到OpenGL
1.4.3 顶点着色
1.4.4 细分着色
1.4.5 几何着色
1.4.6 图元装配
1.4.7 剪切
1.4.8 光栅化
1.4.9 片元着色
1.4.1 0逐片元的操作
1.5 第一个程序:深入分析
1.5.1 进入main()函数
1.5.2 OpenGL的初始化过程
1.5.3 第一次使用OpenGL进行渲染
第2章 着色器基础
2.1 着色器与OpenGL
2.2 OpenGL的可编程管线
2.3 OpenGL着色语言概述
2.3.1 使用GLSL构建着色器
2.3.2 存储限制符
2.3.3 语句
2.3.4 计算的不变性
2.3.5 着色器的预处理器
2.3.6 编译器的控制
2.3.7 全局着色器编译选项
2.4 数据块接口
2.4.1 uniform块
2.4.2 指定着色器中的uniform块
2.4.3 从应用程序中访问uniform块
2.4.4 buffer块
2.4.5 in/out块
2.5 着色器的编译
2.5.1 我们的Load Shaders函数
2.6 着色器子程序
2.6.1 GLSL的子程序设置
2.6.2 选择着色器子程序
2.7 独立的着色器对象
第3章 OpenGL绘制方式
3.1 OpenGL图元
3.1.1 点
3.1.2 线、条带与循环线
3.1.3 三角形、条带与扇面
3.2 OpenGL缓存数据
3.2.1 创建与分配缓存
3.2.2 向缓存输入和输出数据
3.2.3 访问缓存的内容
3.2.4 丢弃缓存数据
3.3 顶点规范
3.3.1 深入讨论Vertex Attrib-Pointer
3.3.2 静态顶点属性的规范
3.4 OpenGL的绘制命令
3.4.1 图元的重启动
3.5 多实例渲染
3.5.1 多实例的顶点属性
3.5.2 在着色器中使用实例计数器
3.5.3 多实例方法的回顾
第4章 颜色、像素和帧缓存
4.1 基本颜色理论
4.2 缓存及其用途
4.2.1 缓存的清除
4.2.2 缓存的掩码
4.3 颜色与OpenGL
4.3.1 颜色的表达与OpenGL
4.3.2 顶点颜色
4.3.3 光栅化
4.4 多重采样
4.4.1 采样着色
4.5 片元的测试与操作
4.5.1 剪切测试
4.5.2 多重采样的片元操作
4.5.3 模板测试
4.5.4 模板的例子
4.5.5 深度测试
4.5.6 融混
4.5.7 融混参数
4.5.8 控制融混的参数
4.5.9 融混方程
4.5.10 抖动
4.5.11 逻辑操作
4.5.12 遮挡查询
4.5.13 条件渲染
4.6 逐图元的反走样
4.6.1 线段的反走样
4.6.2 多边形的反走样
4.7 帧缓存对象
4.7.1 渲染缓存
4.7.2 创建渲染缓存的存储空间
4.7.3 帧缓存附件
4.7.4 帧缓存的完整性
4.7.5 帧缓存的无效化
4.8 多重渲染缓存的同步写入
4.8.1 选择颜色缓存来进行读写操作
4.8.2 双源融混
4.9 像素数据的读取和拷贝
4.1 0拷贝像素矩形
第5章 视口变换、剪切与反馈
5.1 观察视图
5.1.1 视图模型
5.1.2 相机模型
5.1.3 正交视图模型
5.2 用户变换
5.2.1 矩阵乘法的回顾
5.2.2 齐次坐标
5.2.3 线性变换与矩阵
5.2.4 法线变换
5.2.5 OpenGL矩阵
5.3 OpenGL变换
5.3.1 高级技巧:用户剪切
5.4 trans form feedback
5.4.1 transformfeedback对象
5.4.2 transformfeedback缓存
5.4.3 配置transformfeedback的变量
5.4.4 transformfeedback的启动和停止
5.4.5 transformfeedback的示例:粒子系统
第6章 纹理
6.1 纹理映射
6.2 基本纹理类型
6.3 创建和初始化纹理
6.3.1 纹理格式
6.4 代理纹理
6.5 设置纹理数据
6.5.1 显式设置纹理数据
6.5.2 使用PixelUnpack缓存
6.5.3 从帧缓存拷贝数据
6.5.4 从文件加载图像
6.5.5 查询纹理数据
6.5.6 纹理数据布局
6.6 采样器对象
6.6.1 采样器参数
6.7 使用纹理
6.7.1 纹理坐标
6.7.2 组织纹理数据
6.7.3 使用多重纹理
6.8 复杂纹理类型
6.8.1 3维纹理
6.8.2 数组纹理
6.8.3 立方体映射纹理
6.8.4 阴影采样器
6.8.5 深度模板纹理
6.8.6 缓存纹理
6.9 纹理视图
6.1 0压缩纹理
6.1 1滤波
6.1 1.1 线性滤波
6.1 1.2 使用和生成mipmap
6.1 1.3 计算mipmap级别
6.1 1.4 mipmap细节层次控制
6.1 2高级纹理查询函数
6.1 2.1 显式细节层次
6.1 2.2 显式梯度设置
6.1 2.3 偏移后的纹理获取
6.1 2.4 投影纹理
6.1 2.5 着色器中的纹理查询
6.1 2.6 收集纹素
6.1 2.7 合并特殊函数
6.1 3点精灵
6.1 3.1 带纹理的点精灵
6.1 3.2 控制点的外观
6.1 4渲染到纹理贴图
6.1 4.1 丢弃已渲染数据
6.1 5本章总结
6.1 5.1 纹理回顾
6.1 5.2 纹理的最好实践
第7章 光照与阴影
7.1 光照介绍
7.2 经典光照模型
7.2.1 不同光源类型的片元着色器
7.2.2 将计算移到顶点着色器
7.2.3 多个光源和材质
7.2.4 光照坐标系统
7.2.5 经典光照模型的局限
7.3 光照模型进阶
7.3.1 半球光照
7.3.2 基于图像的光照
7.3.3 球面光照
7.4 阴影映射
7.4.1 创建一张阴影贴图
7.4.2 使用阴影贴图
第8章 程序式纹理
8.1 程序式纹理
8.1.1 规则的花纹
8.1.2 玩具球
8.1.3 晶格
8.1.4 程序式着色方法的总结
8.2 凹凸贴图映射
8.2.1 应用程序设置
8.2.2 顶点着色器
8.2.3 片元着色器
8.2.4 法线贴图
8.3 程序式纹理的反走样
8.3.1 走样的来源
8.3.2 避免走样问题
8.3.3 提高分辨率
8.3.4 高频率的反走样
8.3.5 频率截断
8.3.6 程序式反走样的总结
8.4 噪声
8.4.1 噪声的定义
8.4.2 噪声纹理
8.4.3 权衡
8.4.4 一个简单的噪声着色器
8.4.5 湍流
8.4.6 大理石
8.4.7 花岗岩
8.4.8 木纹
8.4.9 噪声的总结
8.5 更多信息
第9章 细分着色器
9.1 细分着色器
9.2 细分面片
9.3 细分控制着色器
9.3.1 生成输出面片的顶点
9.3.2 细分控制着色器的变量
9.3.3 细分的控制
9.4 细分计算着色器
9.4.1 设置图元生成域
9.4.2 设置生成图元的面朝向
9.4.3 设置细分坐标的间隔
9.4.4 更多的细分计算着色器layout选项
9.4.5 设置顶点的位置
9.4.6 细分计算着色器的变量
9.5 细分实例:茶壶
9.5.1 处理面片输入顶点
9.5.2 计算茶壶的细分坐标
9.6 更多的细分技术
9.6.1 视口相关的细分
9.6.2 细分的共享边与裂缝
9.6.3 置换贴图映射
第10章 几何着色器
10.1 创建几何着色器
10.2 几何着色器的输入和输出
10.2.1 几何着色器的输入
10.2.2 特殊的几何着色器图元
10.2.3 几何着色器的输出
10.3 产生图元
10.3.1 几何体的裁减
10.3.2 几何体的扩充
10.4 transformfeedback高级篇
10.4.1 多重输出流
10.4.2 图元查询
10.4.3 使用transformfeedback的结果
10.5 几何着色器的多实例化
10.6 多视口与分层渲染
10.6.1 视口索引
10.6.2 分层渲染
10.7 本章小结
10.7.1 几何着色器回顾
10.7.2 几何着色器的经验谈
第11章 内存
11.1 使用纹理存储通用数据
11.1.1 将纹理绑定到图像单元
11.1.2 图像数据的读取和写入
11.2 着色器存储缓存对象
11.2.1 写入结构化数据
11.3 原子操作和同步
11.3.1 图像的原子操作
11.3.2 缓存的原子操作
11.3.3 同步对象
11.3.4 图像限定符和屏障
11.3.5 高性能的原子计数器
11.4 示例
11.4.1 顺序无关的透明
第12章 计算着色器
12.1 概述
12.2 工作组及其执行
12.2.1 知道工作组的位置
12.3 通信与同步
12.3.1 通信
12.3.2 同步
12.4 示例
12.4.1 物理模拟
12.4.2 图像处理
12.5 本章总结
12.5.1 计算着色器回顾
12.5.2 计算着色器的最佳实践
附录A GLUT基础知识
附录B OpenGLES与WebGL
附录C 内置GLSL变量与函数
附录D 状态变量
附录E 齐次坐标与变换矩阵
附录F OpenGL与窗口系统
附录G 纹理、帧缓存与渲染缓存的浮点格式
附录H OpenGL程序的调试与优化
附录I 缓存对象的布局
术语表
^ 收 起
施莱尔(Dave Shreiner),ARM公司的图形与GPU计算部门主管,自从OpenGL诞生之日起就积极地参与到它的开发当中。他创建了个OpenGL的商业培训课程,并且拥有超过20年的OpenGL编程教学经验。
Graham Sellers,《OpenGL超级宝典》的联合作者,在AMD负责OpenGL的软件开发。他同时还是很多OpenGL特性规范的作者,并且协助将OpenGL ES移植到桌面计算机平台。
John Kessenich,OpenGL着色语言的规范编者,LunarG公司的顾问,负责GLSL的编译器技术。他在3DLabs和Intel帮助下开发了OpenGL 2.0和OpenGL ES 2.0。
Bill Licea-Kane,AMD的技术部门核心成员,《OpenGL Shading Language Guide》的联合作者,OpenGL着色语言技术子部门的负责人。
^ 收 起
Graham Sellers,《OpenGL超级宝典》的联合作者,在AMD负责OpenGL的软件开发。他同时还是很多OpenGL特性规范的作者,并且协助将OpenGL ES移植到桌面计算机平台。
John Kessenich,OpenGL着色语言的规范编者,LunarG公司的顾问,负责GLSL的编译器技术。他在3DLabs和Intel帮助下开发了OpenGL 2.0和OpenGL ES 2.0。
Bill Licea-Kane,AMD的技术部门核心成员,《OpenGL Shading Language Guide》的联合作者,OpenGL着色语言技术子部门的负责人。
^ 收 起
《华章程序员书库:OpenGL编程指南(原书第8版)》是由Khronos小组编写的官方指南,是OpenGL领域的专业著作,素有“OpenGL”的美誉。第8版针对OpenGL4.3版本全方位阐释OpenGL的各种技术细节、方法和佳实践,帮助程序员走上OpenGL专家之路。
《华章程序员书库:OpenGL编程指南(原书第8版)》共12章:第1章概述OpenGL主要特性和功能;第2章讨论OpenGL中主要的特性——可编程着色器;第3章介绍使用OpenGL进行几何体绘制的各种方法,以及一些可以让渲染更为高效的优化手段;第4章阐释OpenGL对于颜色的处理过程,包括像素的处理、缓存的管理以及像素处理相关的渲染技术;第5章介绍在一个二维计算机屏幕上表现三维场景的操作细节;第6章讨论将几何模型与图像结合来创建真实的、高质量的三维模型的方法;第7章介绍计算机图形的光照效果模拟方法;第8章介绍使用可编程着色器生成纹理和其他表面效果的方法细节;第9章解释OpenGL管理和细分几何表面的着色器功能;第10章介绍在OpenGL渲染管线中使用着色器进行几何体图元修改的特别技术;第1l章介绍使用OpenGL帧缓存和缓存内存实现高级渲染技术和非图形学应用的相关方法;第12章介绍了新的着色器阶段,将通用计算的方法融合到OpenGL的渲染管线当中。
^ 收 起
《华章程序员书库:OpenGL编程指南(原书第8版)》共12章:第1章概述OpenGL主要特性和功能;第2章讨论OpenGL中主要的特性——可编程着色器;第3章介绍使用OpenGL进行几何体绘制的各种方法,以及一些可以让渲染更为高效的优化手段;第4章阐释OpenGL对于颜色的处理过程,包括像素的处理、缓存的管理以及像素处理相关的渲染技术;第5章介绍在一个二维计算机屏幕上表现三维场景的操作细节;第6章讨论将几何模型与图像结合来创建真实的、高质量的三维模型的方法;第7章介绍计算机图形的光照效果模拟方法;第8章介绍使用可编程着色器生成纹理和其他表面效果的方法细节;第9章解释OpenGL管理和细分几何表面的着色器功能;第10章介绍在OpenGL渲染管线中使用着色器进行几何体图元修改的特别技术;第1l章介绍使用OpenGL帧缓存和缓存内存实现高级渲染技术和非图形学应用的相关方法;第12章介绍了新的着色器阶段,将通用计算的方法融合到OpenGL的渲染管线当中。
^ 收 起
比价列表