第1章 认知Vega Prime 1
1.1 认识Vega Prime 1
1.1.1 Vega Prime的特性和基本模块 2
1.1.2 Vega Prime的增强模块选项 3
1.1.3 Vega Prime的第三方工具 6
1.1.4 Vega Prime的应用领域 9
1.2 Vega Prime入门指引 9
1.2.1 Vega Prime的版本问题 9
1.2.2 Vega Prime入门指引 10
1.3 Vega Prime应用开发 11
1.3.1 Vega Prime的结构及资源 11
1.3.2 Vega Prime系统结构及应用组成 13
第2章 Vega Prime主要功能模块 16
2.1 Vega Prime基本概念 16
2.1.1 Vega Prime中的六自由度 16
2.1.2 Vega Prime中的基本概念 17
2.2 Vega Prime主要功能模块 18
2.2.1 应用vpApp 19
2.2.2 内核vpKernel 20
2.2.3 管道vpPipeline 21
2.2.4 窗口vpWindow 21
2.2.5 通道vpChannel 22
2.2.6 场景vpScene 23
2.2.7 观察者vpObserver 24
2.2.8 对象vpObject 24
2.2.9 自由度vsDOF 25
2.2.10 转换vpTransform 26
2.2.11 运动模式vpMotion 27
2.2.12 碰撞vpIsector 27
第3章 LynX Prime的使用 29
3.1 LynX Prime的界面组成 29
3.1.1 LynX Prime的启动与退出 29
3.1.2 LynX Prime的界面构成 30
3.2 LynX Prime的使用 32
3.2.1 创建场景vpScene 33
3.2.2 操作对象vpObject 35
3.2.3 设置观察者vpObserver 37
3.2.4 建立转换vpTransform 37
3.2.5 创建运动模式vpMotion 39
3.2.6 应用碰撞检测vpIsector 40
3.2.7 建立特效vpFx 43
3.2.8 设置窗口vpWindow 50
3.2.9 建立环境vpEnv 51
3.2.10 设置通道vpChannel 54
第4章 运行Vega Prime应用 59
4.1 VC++编程基础 59
4.1.1 安装VC++ 59
4.1.2 进程优先级 60
4.1.3 使用多线程 61
4.1.4 创建控制台程序 63
4.1.5 创建MFC对话框程序 64
4.2 配置Vega Prime应用程序编译运行环境 65
4.2.1 配置运行控制台仿真程序 66
4.2.2 配置MFC对话框运行环境 68
4.3 导出ACF文件 68
4.3.1 导出ACF文件 68
4.3.2 Vega Prime的最小应用程序 68
4.4 剖析Vega Prime应用程序组成 71
4.4.1 基本组成 72
4.4.2 创建容器 73
4.4.3 初始化模块 73
4.4.4 建立内核 74
4.4.5 建立路径 74
4.4.6 建立管道 74
4.4.7 建立窗口 75
4.4.8 建立通道 76
4.4.9 建立观察者 77
4.4.10 建立场景 77
4.4.11 建立转换 78
4.4.12 建立对象 78
4.4.13 建立碰撞检测 80
4.4.14 建立碰撞服务 81
4.4.15 建立循环服务 81
4.4.16 建立环境 81
4.4.17 建立太阳 82
4.4.18 建立运动模式 83
4.4.19 建立特效 83
4.4.20 配置应用 84
第5章 建立基于MFC对话框的Vega Prime应用程序 87
5.1 配置MFC对话框Vega Prime应用程序的编译环境 87
5.1.1 MFC对话框Vega Prime应用程序的理解 87
5.1.2 配置MFC对话框Vega Prime应用程序的编译环境 88
5.2 建立MFC对话框Vega Prime应用程序 89
5.2.1 MFC对话框程序界面改造 90
5.2.2 添加Vega Prime应用公共类PublicMember 91
5.2.3 启动Vega Prime应用主线程 109
5.2.4 启动包含ACF文件的主线程 111
第6章 Vega Prime编程对象的实例使用 113
6.1 建立内核实例 114
6.2 建立管道对象 114
6.3 建立窗口 115
6.4 建立场景 116
6.5 改造路径搜索对象 116
6.6 加载物体函数设计 117
6.7 设置运动模式 120
6.8 建立转换 121
6.9 控制观察者 122
6.10 配置键盘函数 123
6.11 控制物体缩放比例及透明 126
6.12 控制碰撞检测 128
6.13 控制特效 130
6.14 配置灯光效果 131
6.15 制造幻影效果 133
6.16 控制声音 134
6.17 控制父子关系 137
6.18 操作Switch 140
6.19 操作DOF 142
6.20 获取DOF的坐标 148
6.21 配置多通道 149
6.22 物体平面影子效果 154
6.23 物体颜色控制 155
6.24 雨雪天气控制 159
6.25 场景能见度控制 164
6.26 纯色场景控制 165
6.27 仿真场景全屏设计 167
6.28 加快仿真场景物体加载速度 169
第7章 Vega Prime自绘图形设计 172
7.1 认识VSG 172
7.1.1 VSG的特点 172
7.1.2 VSG的功能模块 173
7.1.3 VSG的图形绘制过程 173
7.2 VSG图形绘制 174
7.2.1 简单几何体绘制 175
7.2.2 箱体绘制 178
7.2.3 梯形平台绘制 180
7.2.4 平面绘制 182
7.2.5 球体绘制 184
7.2.6 字符输出 186
7.3 图形纹理控制 189
7.4 图形材质控制 192
7.5 VSG在场景中显示中文 196
7.5.1 图片产生类设计 196
7.5.2 纹理切换控制设计 201
第8章 Vega Prime和OpenGL混合编程 206
8.1 OpenGL基础 206
8.1.1 OpenGL的特点 206
8.1.2 OpenGL开发环境配置 207
8.1.3 OpenGL程序构成 207
8.1.4 OpenGL绘制几何图形 209
8.1.5 OpenGL的颜色模式 215
8.1.6 OpenGL视图变换 218
8.2 OpenGL在Vega Prime应用中绘制图形 220
8.2.1 理解Vega Prime与OpenGL混合编程 220
8.2.2 定义订阅者类 221
8.2.3 Vega Prime中使用OpenGL 225
第9章 Vega Prime中的实用功能实现 230
9.1 Vega Prime中的重叠效果 230
9.1.1 点到点重叠效果 231
9.1.2 闭环重叠效果 232
9.1.3 二维字体重叠效果 233
9.1.4 二维图片重叠效果 234
9.2 自定义碰撞检测类 235
9.2.1 Vega Prime的碰撞检测 235
9.2.2 自定义查找物体顶点类 237
9.2.3 自定义碰撞检测类 239
9.2.4 自定义碰撞检测类的使用 242
9.3 窗口鼠标控制的完整实现 247
9.3.1 窗口鼠标函数的认识 247
9.3.2 窗口鼠标类的设计实现 248
9.3.3 窗口鼠标类的配置 251
9.4 场景通道屏幕文字和图形显示 254
9.4.1 通道屏幕文字显示类的设计实现 254
9.4.2 通道屏幕文字显示类的配置调用 263
9.4.3 通道屏幕绘图功能设计实现 265
9.5 鼠标点选通道对象功能设计 267
9.5.1 通道挑选Picker类的设计实现 268
9.5.2 窗口鼠标类的辅助设计实现 272
9.5.3 通道挑选Picker类的配置使用 275
9.6 仿真通道的屏幕图片抓取 278
9.6.1 通道屏幕图片抓取功能的设计 278
9.6.2 通道屏幕图片抓取功能的配置使用 281
9.7 仿真通道的视频录制 283
9.7.1 通道屏幕视频录制类的设计 283
9.7.2 通道屏幕视频录制功能的配置使用 289
9.8 虚拟仿真中的半透明处理和纹理运动仿真 293
9.8.1 虚拟仿真中的半透明处理 293
9.8.2 虚拟仿真中的纹理运动仿真 295
9.9 虚拟仿真中的聚光灯光源使用 299
9.9.1 聚光灯光源vpLightLobe的理解 300
9.9.2 聚光灯光源vpLightLobe的使用 300
9.10 渲染策略的使用 302
9.10.1 物体渲染策略的使用 302
9.10.2 通道渲染的使用 305
9.11 模板效果的设计与使用 309
9.11.1 模板效果的基本要素 309
9.11.2 单通道模板效果设计 310
9.11.3 双通道模板效果设计 318
9.12 仿真辅助线程设计 331
9.12.1 C++中的线程 331
9.12.2 线程函数 331
9.12.3 线程控制 332
9.12.4 数据辅助线程设计 333
第10章 Vega Prime编程框架设计 335
10.1 MFC下的框架总体设计 335
10.2 具体窗口功能设计实现 336
10.2.1 预备设计 336
10.2.2 主窗口背景色彩控制 339
10.2.3 主窗口背景图片布局 341
10.2.4 主窗口全屏幕自适应设计 342
10.2.5 功能窗口初步设计 344
10.2.6 TabControl初始化设计 345
10.2.7 TabControl功能切换设计 347
10.2.8 功能窗口再次设计 348
10.3 运行效果设计 354
参考文献 356
附件 虚拟现实开发实例 357