1.1 VRML的诞生、现状及前景 1
第一章 VRML概述 1
1.2 VRML与Web 3
1.3 VRML虚拟现实实例 3
1.4 VRML2.0的功能和应用 5
1.5 VRML常用浏览器 6
1.5.1 World View 2.0的浏览方式控制 7
1.5.2 World View 2.0的浏览视点控制 8
1.5.3 World View 2.0的弹出菜单 9
2.1 VRML约定及基本概念 11
2.1.1 节点和域 11
第二章 VRML基本概念 11
2.1.2 事件、路由、原型 12
2.1.3 场景、场景结构图、交互及脚本 13
2.2 VRML空间计量单位 13
2.2.1 VRML空间坐标系 13
2.2.2 长度单位 14
2.2.3 角度单位 14
2.3 VRML文件基本要素 14
2.4 VRML节点简介 15
2.4.1 外形节点Shape 15
2.4.2 组节点Group 16
2.4.3 造型节点 16
2.5.2 节点 17
2.5.1 文件头 17
2.4.4 父节点、子节点 17
2.4.5 节点与场景的关系 17
2.5 VRML文件通用语法 17
2.5.3 VRML文件中的注解 18
2.6 创建第一个VRML场景 18
第三章 在场景中添加简单几何体和文本造型 21
3.1 Shape节点对几何体的封装 21
3.2 添加立方体 22
3.3 添加球体 23
3.4 添加圆柱体 25
3.5 添加圆锥体 26
3.6.2 字体风格 27
3.6 文本的基本概念 27
3.6.1 文本造型 27
3.6.3 字符集 28
3.7 Text节点语法 28
3.8 在场景中添加文本 29
3.9 FontStyle节点 29
3.10 FontStyle节点对文本显示的控制 30
3.10.1 控制文本长度 30
3.10.2 控制文本的扩展程度 32
3.10.3 指定字体风格 32
3.10.4 指定字体大小和间距 33
3.10.5 实现文本和几何体的结合 34
3.11 在同一场景中设置多个造型 36
3.12 应用举例 38
第四章 几何体的平移、旋转和缩放 41
4.1 理解局部坐标系 41
4.2 理解VRML空间 42
4.3 在多坐标系下的空间变换 43
4.3.1 平移 43
4.3.2 旋转 44
4.3.3 缩放 45
4.4 Transform节点语法 46
4.5 平移几何体 47
4.6 旋转几何体 49
4.7 缩放几何体 57
4.7.1 scale域 57
4.7.2 scaleOrientation域 60
4.7.3 center域 61
4.8 应用举例 64
第五章 为几何体添加材质 67
5.1 理解材质 67
5.2 Apearance节点 67
5.3 Material节点 68
5.4 改变几何体的颜色 69
5.5 为几何体设置透明度 71
5.6 改变发光效果 74
5.7 应用举例 75
第六章 复杂造型 78
6.1 基于顶点的几何造型 78
6.1.1 理解点、线、面集和Coordinate节点 78
6.1.2 构造离散点 79
6.1.3 创建空间折线 80
6.1.4 创建空间面造型 85
6.1.5 应用举例 89
6.2 创建标高网格 98
6.3 创建挤出造型 109
7.2 光源类型 120
第七章 在场景中添加光源 120
7.1 什么是光源 120
7.3 光源节点 122
7.3.1 PointLight节点 123
7.3.2 DirectionalLight节点 125
7.3.3 SpotLight节点 126
7.4 添加阴影效果 127
7.5 应用举例 129
第八章 添加背景 132
8.1 理解背景 132
8.1.2 空间背景图像 133
8.1.1 空间角 133
8.1.3 空间背景的转换 134
8.2 Background节点 134
8.3 创建天空 137
8.4 创建地面 138
8.5 创建全景图 139
第九章 场景的雾化 143
9.1 理解雾化 143
9.2 Fog节点语法 143
9.3 雾化的应用 145
10.2.1 理解Viewpoint节点 154
10.2 Viewpoint节点 154
10.1 理解视点 154
第十章 控制视点 154
10.2.2 Viewpoint节点的应用 156
10.3 增加场景信息(WorldInfo) 163
10.4 设置场景参数 164
第十一章 为几何体添加纹理 167
11.1 理解纹理 167
11.2 Texture节点 168
11.3 纹理变换 174
11.4 重复与箝制纹理 176
11.5 纹理缩放 177
11.6 纹理贴图切割 179
11.7 空间平面的明暗控制 183
11.8 LOD(Lod Of Detail)方法 186
第十二章 脚本 197
12.1 理解脚本 197
12.1.1 脚本的基本结构 197
12.1.2 变量 198
12.1.3 系统变量 198
12.1.4 字符串 199
12.1.5 表达式 200
12.1.6 注释 200
12.1.7 关键字 201
12.1.8 命令 201
12.1.9 保留字 204
12.2 事件和路由 205
12.3 Script节点语法 205
12.4 使用Script处理事件 206
12.5 应用举例 208
第十三章 添加声音 210
13.1 基本概念 210
13.2 AudioClip节点功能与用法 212
13.3 利用MovieTexture节点引用声音 213
13.4 Sound节点语法 214
13.5 声音的应用举例 218
14.1 事件与路由的互访 221
第十四章 添加动画效果 221
14.2 TimeSensor节点 222
14.3 插补器节点 223
14.3.1 OrientationInterpolator节点 226
14.3.2 ColorInterpolator节点 227
14.3.3 ScaleInterpolator节点 231
14.3.4 CoordinateInterpolator节点 232
14.3.5 NormalInterpolator节点 236
14.4 动画流程 238
14.4.1 触发阶段 238
14.4.4 引擎和目标阶段 239
14.4.3 记时阶段 239
14.4.2 逻辑处理 239
14.5 动画实例 240
第十五章 检测器 251
15.1 环境检测器 251
15.1.1 PlaneSensor节点 251
15.1.2 SphereSensor节点 255
15.1.3 Cylindersensor节点 256
15.2 定点设备检测器 258
15.3 插补器 260
15.4 应用举例 260
16.1.1 VsibilitySensor节点 266
16.1 三维形体对浏览者动作的感知 266
第十六章 交互功能的实现 266
16.1.2 ProximitySensor节点 269
16.2 增加锚节点 271
16.3 内联 279
16.4 视点切换 283
16.5 碰撞检测 293
16.6 交互实例 296
第十七章 原型的应用 306
17.1 理解原型 306
17.2 用PROTO定义原型 307
17.4.1 创建材质节点 309
17.3 EXTERNPROTO——外部原型 309
17.4 创建新节点 309
17.4.2 创建外观节点 311
17.4.3 创建新的几何节点 312
17.5 应用举例 315
附录A 节点参考 335
附录B 域值类型参考 341
附录C 实现与互联网的连接 343
C.1 设置服务器 343
C.2 使用CGI文件组织 344
C.3 宣传VRML 345