《高端图形图像核心技术宝典 OpenGL Optimizer程序员编程指南》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:里欧·法尼尼主编;数码影像技术丛书编委会编著
  • 出 版 社:北京:北京希望电子出版社
  • 出版年份:2000
  • ISBN:7900044884
  • 页数:302 页
图书介绍:本书讲解了场景图形、高阶几何基本要素、显示列表、顶点数组、细节层次、场景图形的立体化、镶嵌操作、多种剔除技术、反射映射、多进程多处理器计算技术等,并探讨了这些工具协同工作的方式,以及在利用OpenGLOptimizer开发大型可视化应用程序时可能遇到的问题和解决办法。

第0章 关于本指南 1

0.1 本指南面向的读者 1

0.2 怎样利用这本指南 1

0.3 本指南中包含的内容 2

0.4 推荐的背景读物 4

第一部分 9

第1章 OpenGL Optimizer概述 9

1.1 OpenGL Optimizer面临的问题和解决办法 9

1.2 OpenGL Optimizer工具集 10

第2章 基本的I/O:开始使用OpenGL Optimizer 18

2.1 调用opInit() 18

2.2 保存和装载场景图形文件 18

2.3 查看类:opViewer 21

2.4 控制渲染:opKeyCallback和opDrawImpl 23

3.1 显示列表 29

第3章 向硬件发送有效的图形数据 29

第二部分 29

3.2 顶点数组 30

3.3 缩减曲面法线数据的表示法 31

3.4 避免OpenGL的模式切换 31

3.5 创建OpenGL连通的几何基本要素 32

第4章 渲染适宜的细节层次 39

4.1 简化工具概述 39

4.2 opSimplify:用于添加细节层次节点的基类 40

4.3 创建LODs:opSRASimplify 42

4.4 Rossignac简化运算法则:opLatticeSimplify 45

4.5 利用不同的细节层次合并图形:opMergeScenes 46

第5章 从场景图形中剔除不必要的对象 49

5.1 视图平截头体剔除操作 49

5.2 遮断剔除 50

5.3 视图平截头体剔除和遮断剔除绘图遍历操作:opDrawAction 52

5.4 利用视图平截头体和遮断剔除操作渲染:opOccDrawImpl 54

5.5 关于调整遮断剔除操作的提示 56

5.6 细节剔除操作 57

5.7 背面剔除 58

第6章 按立体的方式组织场景图形 61

6.1 立体化对剔除遍历操作的效果 61

6.2 关于粒度的权衡 61

6.3 什么时候需要进行立体化 62

6.4 立体化运算法则 62

6.5 立体化工具:opSpatialize 63

6.6 用于立体化组件过程的类 64

第三部分 71

第7章 按交互方式进行加亮和加工操作 71

7.1 加亮和拾取技术概述 71

7.2 与已渲染的对象间的交互作用:opPickDrawImpl 71

7.3 场景图形的修改:opPick 74

7.4 超越外观的节点:opHighlight 78

8.1 简单映射:远程环境的远程视图 80

第8章 高效率高质量的光照效果:反射映射 80

8.2 精确映射:本地环境的本地视图 82

8.3 反射映射类:opReflMap 84

第四部分 91

第9章 高阶几何基本要素和离散网格 91

9.1 高阶几何基本要素的功能和用法 91

9.2 表示法所必需的对象 92

9.3 几何基本要素:基类opRep和应用程序repTest 95

9.4 平面上的曲线 97

9.5 空间中的曲线 113

9.6 参数曲面 116

9.7 opCuboid 144

9.8 规则网格和离散曲面 145

第10章 创建和维护曲面的拓扑结构 151

10.1 拓扑结构的任务概述 151

10.2 场景图形拓扑结构综述:opTopo 151

10.3 边界上的协调顶点:opBoundary 157

10.4 收集连通曲面:opSolid 159

第11章 渲染高阶几何基本要素:镶嵌器 161

11.1 镶嵌器功能 162

11.2 基类opTessellateAction 163

11.3 镶嵌空间曲线 166

11.4 镶嵌立方体:opTessCuboidAction 167

11.5 镶嵌参数曲面 167

11.6 镶嵌规则网格 173

第五部分 183

第12章 遍历大型场景图形 183

12.1 遍历操作和回调函数:一般功能 183

12.2 利用回调函数的返回值opTravDisp控制遍历操作 185

12.3 指定删除遍历对象的存储:opActionDisp 186

12.4 “深度优先”遍历操作:opDFTravAction 186

12.5 “宽度优先”遍历操作:opBFTravAction 187

12.6 来自范例应用程序opoptimize的范例遍历函数 189

12.7 遍历场景图形和应用csDispatch:opDispatchAction 191

第13章 加工三角形和重新构造可渲染的对象 193

13.1 低层几何工具概述 193

13.2 将csGeoSets分解为成分三角形:opGeoConverter 194

13.3 指定新的csGeoSets的着色方式:opColorGenerator 195

13.4 构造新的csGeoSets 196

第14章 管理多个处理器 201

14.1 多进程控制任务和相关的类 201

14.2 线程管理器概述 202

14.3 线程管理器:opThreadMgr 203

14.4 为线程管理器定义任务 206

14.5 协调修改场景图形的各个线程:opTransactionMgr 209

14.6 低层多进程工具 212

第六部分 219

第15章 实用程序 219

15.1 出错处理和通知消息 219

15.3 opx:用于相邻元素动态数组的一个模板类 220

15.2 性能指示器 220

15.5 收集三角形的统计信息 221

15.4 打印场景图形 221

15.6 显示节点信息 223

15.7 观察OpenGL的模式 224

15.8 命令行解析程序:opArgParser 225

第16章 排除故障 227

16.1 编译程序警告信息 227

16.2 运行时警告信息 227

16.3 调整场景图形数据库 227

第七部分 235

附录A 安装OpenGL Optimizer 235

A.1 在UNIX系统中安装OpenGL Optimizer和支持软件 235

A.2 在NT系统中安装OpenGL Optimizer 236

B.1 命令行选项和用户输入 238

B.2 范例应用程序opviewer 238

附录B OpenGL Optimizer范例应用程序 238

B.3 其他范例应用程序 239

附录C 范例应用程序opviewer 242

C.1 确认安装 243

C.2 编译和运行opviewer 243

C.3 opviewer程序代码 243

D.1 场景图形工具的返回值 258

D.2 编译和运行opoptimize 258

附录D 利用应用程序opoptimize调整场景图形 258

D.3 opoptimize的程序代码 259

附录E Optimizer类层次结构 283

E.1 opGUI类层次结构 283

E.2 opXmGUI类层次结构 283

E.3 Optimizer类层次结构 283

附录F 中英文术语对照表 288

附录G 英中文术语对照表 294

术语表 300