• 沒有找到結果。

X3D动画游戏设计——虚拟人、全景技术、影视媒体、游戏动画设计源程序 - 万水书苑-出版资源网

N/A
N/A
Protected

Academic year: 2021

Share "X3D动画游戏设计——虚拟人、全景技术、影视媒体、游戏动画设计源程序 - 万水书苑-出版资源网"

Copied!
25
0
0

加載中.... (立即查看全文)

全文

(1)第 4 章 X3D 三维立体展馆设计 X3D 虚拟现实三维立体展馆设计利用 X3D 程序设计中的基本几何节点、复杂节点、组节 点、动态感知动画节点等进行开发与设计,开发各种 X3D 虚拟现实三维立体展馆场景和造型, 如汽车展览场馆、飞机展览场景、航天展览场景及兵器展馆场景设计等,使浏览者在三维立体 空间体验身临其境的感受。 利用 X3D 虚拟现实几何节点、背景节点、模型节点、空间变换节点、内联节点及动态感 知节点等,开发设计 X3D 虚拟现实三维立体展馆。 本文所涉及的 X3D 虚拟现实基本几何节点、复杂节点、组节点、纹理绘制节点以及动态 感知动画节点等,请参考中国水利水电出版社 2009 年 6 月出版的《X3D 三维立体网页设计》 一书,该书对 X3D 虚拟现实全部 171 个节点和域进行了详细说明和语法解释,并提供了相应 源程序实例,帮助读者理解 X3D 三维立体网页程序设计。. 4.1. 汽车展览场馆设计. X3D 虚拟现实汽车展馆设计是利用基本几何节点、复杂节点及动态智能感知动画节点等 进行开发设计与编程。X3D 汽车展馆设计是采用先进的渐进式软件开发模式,对虚拟现实场 景和造型进行开发、设计、编程及调试。利用虚拟现实程序设计语言 X3D 开发工具对三维立 体造型进行编码、测试和运行。利用结构化、模块化、组件化及面向对象的开发设计思想,采 用循序渐进、由浅入深的策略,开发虚拟现实软件工程项目。 4.1.1 汽车展览场馆设计 X3D 虚拟现实汽车展馆设计,包括 X3D 头节点与场景根节点的语法结构定义。虚拟现实 汽车展馆设计由汽车展馆场景设计、汽车造型设计、文字造型设计及汽车动画场景设计等构成。 利用结构化、模块化及组件化思想设计和开发。在虚拟现实汽车展馆设计中,采用浅灰色为背 景来突出汽车展馆造型设计效果。X3D 虚拟现实汽车展馆设计层次结构如图 4-1 所示。 X3D 设计. 汽车展馆设计. 汽车展馆 场景设计. 汽车造型 设计. 文字造型 设计. 图 4-1 X3D 汽车展馆设计层次结构. 动画场景 造型设计.

(2) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. 任何 X3D 场景或造型都由 X3D 节点、场景根节点及基本几何节点构成,也可在此基础上 开发设计软件项目所需要的各种复杂的场景和造型。 4.1.2 汽车展览场馆源程序实例 X3D 虚拟现实汽车展馆设计是利用 X3D 虚拟现实程序设计语言对三维立体场景进行设 计、编码和调试。采用结构化、组件化、模块化及面向对象的开发思想,设计出层次清晰、结 构合理的三维立体场景。利用虚拟现实的各种节点创建生动、鲜活、逼真的三维立体场景。 利用 X3D 基本几何节点创建汽车展馆组合造型,使用复杂节点、组节点开发设计虚拟现 实汽车造型和文字造型,利用动态感知动画节点设计动画场景。采用背景节点衬托汽车展馆设 计,使用内联节点、坐标变换节点进行坐标定位,使汽车展馆组合造型更加栩栩如生。 利用 X3D-Edit 专用编辑器或记事本编辑器直接编写*.x3d 源程序,在正确安装 X3D-Edit 专用编辑器的前提下,启动 X3D-Edit 专用编辑器进行编程。利用 X3D 基本几何节点、背景节 点、复杂节点及动态感知动画节点等编写 X3D 源程序。 本书附带光盘目录中,在“X3D 源程序实例/第 4 章源程序实例/px3d4-1/”目录下,提供 X3D 源程序:px3d4-1.x3d 源程序。 【实例 4-1】 X3D 虚拟现实汽车展馆三维立体场景造型设计 px3d4-1.x3d 源程序,利用 X3D 几何节点、复杂节点进行开发与设计编写源程序,使用 X3D 背景节点、视点节点、圆柱节点、 立方体节点、内联节点、坐标变换节点及动态感动画知节点等设计编写,源程序展示如下: 汽车展馆三维立体场景造型设计源程序:px3d4-1.x3d 主程序 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE X3D PUBLIC "http://www.web3d.org/specifications/x3d-3.2.dtd" "file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.2.dtd"> <X3D profile="Immersive" version="3.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.2.xsd"> <head> <meta content="px3d4-1.x3d" name="filename"/> <meta content="zjz-zjr-zjd" name="author"/> <meta content="*enter name of original author here*" name="creator"/> <meta content="*enter copyright information here* Example: Copyright (c) Web3D Consortium Inc. 2008" name="rights"/> <meta content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/> <meta content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/> </head> <Scene> <Background skyColor="0.98 0.98 0.98"/> <WorldInfo info="an introductory scene" title="zjz-zjr-zjd"/> <Viewpoint description="zjz-zjr-zjd" orientation="0 0 0 0" position="0 10 50"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 10 -30"> <Shape> <Appearance> 68.

(3) 第4章 X3D 三维立体展馆设计. <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="80 18 0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="-40 10 -10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="0.2 18 40"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="40 10 -10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="0.2 18 40"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 23 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="80 8 0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="5 5 5" translation="0 23 10"> <Inline url="px3d4-1-1.x3d"/> </Transform> <!-- ============================================================== --> <Group> <Transform DEF="fly1" rotation="0 0 1 0" scale="1.5 1.5 1.5" translation= "0 0 -8"> <Inline url="car-10.x3d"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0">. 69.

(4) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time1" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time1" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly1"/> <Group> <Transform DEF="fly2" rotation="0 0 1 0" scale="1.5 1.5 1.5" translation="-10 0 -15"> <Inline url="car-7.x3d"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time2" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0,0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926,0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time2" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly2"/> <Group>. 70.

(5) 第4章 X3D 三维立体展馆设计. <Transform DEF="fly3" rotation="0 0 1 0" scale="1.5 1.5 1.5" translation= "10 0 -15"> <Inline url="car-2.x3d"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time3" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time3" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly3"/> </Scene> </X3D>. X3D 汽 车 展 馆 造 型 三 维 立 体 场 景 造 型 设 计 运 行 程 序 , 首 先 , 启 动 BS_Contact_ VRML/X3D_7.2 浏览器,然后打开“X3D 源程序实例/第 4 章源程序实例/px3d4-1.x3d”,即可 运行虚拟现实 X3D 汽车展馆造型三维立体场景造型,如图 4-2 所示。. 图 4-2 X3D 汽车展馆造型设计效果 71.

(6) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. 4.2. 飞机展览场景设计. X3D 虚拟现实飞机展览场景设计,利用 X3D 三维立体空间背景节点、几何造型节点、复 杂节点、组节点、内联节点及空间坐标变换节点等,实现飞机展览场景造型设计。利用背景节 点创建一个蓝色天空效果,使用内联节点及空间坐标变换节点实现模块化设计。 4.2.1 飞机展览场景设计 飞机展览场景设计利用 X3D 虚拟现实几何节点、复杂节点、组节点进行相应组合设计, 使用旋转、定位及缩放技术对飞机展览场景造型进行设计,创建一个逼真、鲜活的航空博览会 场景造型。航空博览会场景造型设计由空中客车、小型民航机、民用直升机、战斗机等构成。 飞机展览场景造型设计层次结构如图 4-3 所示。 X3D 设计. 航空博览会设计. 空中客车设计. 民用飞机设计. 图 4-3. 民用直升机设计. 战斗机设计. 航空博览会场景层次结构. X3D 文件由头节点与场景根节点构成,任何 X3D 场景或造型都由 X3D 节点、场景根节 点以及基本几何节点构成,将几何节点进行合理、有效的组织和搭配,构造出所需场景和造型。 航空博览会场景造型是对 X3D 虚拟现实基本几何节点、复杂几何节点、组节点等有一个更加 全面、系统和深入的理解。 4.2.2 飞机展览场景源程序实例 X3D 虚拟现实飞机展览场景设计是利用虚拟现实 X3D 三维立体语言中,提供的基本几何 节点、复杂几何节点、组节点等开发与设计。X3D 飞机展览场景造型设计由 X3D 头节点、场 景根节点及各种场景造型构成。场景节点是三维场景中的根节点,选择或添加一个场景节点可 以编辑各种三维立体场景和造型。使用背景节点、球节点及圆柱节点等,利用内联节点、空间 坐标变换节点进行模块化设计,利用坐标变换节点和缩放功能改变三维物体造型形态,构造出 虚拟现实 X3D 飞机造型。 利用 X3D-Edit 专用编辑器或记事本编辑器直接编写*.x3d 源程序,在正确安装 X3D-Edit 专用编辑器的前提下,启动 X3D-Edit 专用编辑器进行编程。利用 X3D 基本几何节点、背景节 点、模型节点、复杂几何节点及组节点等编写 X3D 源程序。 本书附带光盘目录中,在“X3D 源程序实例/第 4 章源程序实例/”目录下,提供 X3D 源 程序:px3d4-2.x3d 源程序。. 72.

(7) 第4章 X3D 三维立体展馆设计. 【实例 4-2】X3D 飞机展览场景造型设计 px3d4-2.x3d 源程序,利用 X3D 基本语法和几何 节点、复杂几何节点、组节点定义开发与设计编写程序,使用 X3D 背景节点、球节点、圆柱 节点、内联节点、坐标变换节点等设计编写,X3D 飞机展览场景设计 px3d4-2.x3d 源程序展示 如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE X3D PUBLIC "http://www.web3d.org/specifications/x3d-3.2.dtd" "file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.2.dtd"> <X3D profile="Immersive" version="3.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.2.xsd"> <head> <meta content="px3d4-2.x3d" name="filename"/> <meta content="zjz-zjr-zjd" name="author"/> <meta content="*enter name of original author here*" name="creator"/> <meta content="*enter copyright information here* Example: Copyright (c) Web3D Consortium Inc. 2008" name="rights"/> <meta content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/> <meta content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/> </head> <Scene> <Background DEF="_Background" skyAngle='1.309,1.571' skyColor='1 1 1,0.2 0.2 1,1 1 1'> </Background> <WorldInfo info="an introductory scene" title="zjz-zjr-zjd"/> <Viewpoint description="zjz-zjr-zjd" orientation="0 0 0 0" position="0 0 80"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 23 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="120 8 0.2"/> </Shape> </Transform> <!-- =============================================================== --> <Transform rotation="0 0 1 0" scale="1 1 1" translation="-60 0 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="55" radius="0.5"/> 73.

(8) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="-60 28 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Sphere radius="0.8"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="60 0 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="55" radius="0.5"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="60 28 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Sphere radius="0.8"/> </Shape> </Transform> <Transform DEF="fly3" rotation="0 1 0 0" scale="5 5 5" translation="0 23 10"> <Inline url="hkbl.x3d"/> </Transform> <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> <Transform DEF="fly3" rotation="0 1 0 0.785" scale="0.01 0.01 0.01" translation="-80 -20 -185"> <Inline url="kk.x3d"/> </Transform> <Transform DEF="fly3" rotation="0 1 0 0.785" scale="0.01 0.01 0.01" translation="-80 -20 -285"> <Inline url="kk.x3d"/> </Transform > <Transform DEF="fly3" rotation="0 1 0 0.785" scale="0.1 0.1 0.1" translation="-80 0 -100">. 74.

(9) 第4章 X3D 三维立体展馆设计. <Inline url="xkj.x3d"/> </Transform > <Transform DEF="fly3" rotation="0 1 0 0.785" scale="0.005 0.005 0.005" translation="-80 -20 -50"> <Inline url="mzsj.x3d"/> </Transform > <Transform DEF="fly3" rotation="0 1 0 -0.785" scale="2 2 2" translation="80 -20 -165"> <Inline url="zdj1.x3d"/> </Transform> <Transform DEF="fly3" rotation="0 1 0 -0.785" scale="2 2 2" translation="80 -20 -125"> <Inline url="zdj3.x3d"/> </Transform> <Transform DEF="fly3" rotation="0 1 0 -0.785" scale="2 2 2" translation="80 -20 -85"> <Inline url="zdj1.x3d"/> </Transform> <Transform DEF="fly3" rotation="0 1 0 -0.785" scale="2 2 2" translation="80 -20 -55"> <Inline url="zdj3.x3d"/> </Transform> </Scene> </X3D>. X3D 飞机展览场景造型设计运行程序, 首先,启动 BS_Contact_VRML/X3D 或 xj3d-browser 浏览器,然后打开“X3D 源程序实例/第 4 章源程序实例/px3d4-2.x3d”,即可运行虚拟现实 X3D 航空博览会三维立体场景造型,如图 4-4 所示。. 图 4-4 X3D 航空博览会三维立体造型效果. 75.

(10) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. 航天展览场景设计. 4.3. 航天展览场景设计利用虚拟现实语言 X3D 中的几何节点、复杂节点、组节点及动态感知 动画节点等,创建一个三维立体航天展览场景和造型,包括神州七号、航天飞机、人造卫星等。 使用几何节点、面节点、坐标变换节点创建一个三维立体航天造型,运用长方体节点、圆柱节 点、文字造型节点、外观材料节点技术实现一个航天展馆设计。 4.3.1 航天展览场景设计 航天展览场景设计是利用几何节点、复杂节点、组节点及动态感知动画节点等,包括航 天展馆、神州七号、航天飞机、人造卫星等。利用动画节点、坐标变换节点和内联节点实现航 天展馆动画效果。使用几何节点、面节点、坐标变换节点创建一个三维立体航天造型。 航天展览场景设计是运用场景造型由 X3D 头节点与场景根节点构成。任何 X3D 场景或造 型都由 X3D 节点、场景根节点、基本几何节点、复杂节点及纹理节点构成,将几何节点进行 纹理绘制、造型外观颜色设计,构造出生动、逼真、鲜活的航天展览场景和造型。 航天展览场景造型设计层次结构如图 4-5 所示。 X3D 节点. 航天博览会设计. 神州七号 设计. 航天飞机 设计 图 4-5. 人造卫星 设计. 航天博览会 场景设计. 航天展馆 动画设计. 航天展览场景造型设计层次结构. X3D 虚拟现实航天展览场景造型设计由航天展馆、神州七号、航天飞机、人造卫星以及 航天展馆动画设计等构成。每一个子模块又由 X3D 文件中的头文件、主程序概貌和场景根节 点构成,在场景根节点中选择或添加一个相应节点进行编程设计,可以开发出所需的各种航天 三维立体场景和造型。 4.3.2 航天展览场景源程序实例 航天展览场景造型设计是利用虚拟现实 X3D 语言中提供的各种节点开发与设计。使用 背景节点、长方体节点、圆柱节点、复杂节点、组节点等,采用长方体节点和圆柱节点创 建航天展馆,利用模型节点、面节点和坐标变换节点创建航天飞机造型、人造卫星等,利 用智能感知动画节点实现航天展馆的动画设计,使浏览者体验身临其境的航天展馆三维立 体感受。 利用 X3D-Edit 专用编辑器或记事本编辑器直接编写*.x3d 源程序,在正确安装 X3D-Edit 专用编辑器的前提下,启动 X3D-Edit 专用编辑器进行编程。利用 X3D 基本几何节点、背景节 76.

(11) 第4章 X3D 三维立体展馆设计. 点、复杂节点、组节点及动态感知动画节点等编写 X3D 源程序。 本书附带光盘目录中,在“X3D 源程序实例/第 4 章源程序实例/”目录下,提供 X3D 源 程序:px3d4-3.x3d 源程序。 【实例 4-3】航天展览场景造型设计 px3d4-3.x3d 源程序,利用 X3D 各种节点,如几何节 点、复杂节点、组节点及动态感知动画节点等开发与设计编写源程序,使用 X3D 长方体节点、 背景节点、坐标变换节点、内联节点及动态感知动画节点等设计编写,源程序展示如下: X3D 虚拟现实航天展览场景造型设计 px3d4-3.x3d 主程序 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE X3D PUBLIC "http://www.web3d.org/specifications/x3d-3.2.dtd" "file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.2.dtd"> <X3D profile="Immersive" version="3.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.2.xsd"> <head> <meta content="px3d4-3.x3d" name="filename"/> <meta content="zjz-zjr-zjd" name="author"/> <meta content="*enter name of original author here*" name="creator"/> <meta content="*enter copyright information here* Example: Copyright (c) Web3D Consortium Inc. 2008" name="rights"/> <meta content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/> <meta content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/> </head> <Scene> <Background skyColor="0.98 0.98 0.98"/> <Viewpoint description="viewpoint1" orientation="0 1 0 0" position="0 8 16"/> <Viewpoint description="viewpoint1" orientation="0 1 0 0" position="0 8 56"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 10 -30"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.3 0.9" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="80 18 0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="3 3 3" translation="0 15 -30"> <Inline url="ht.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="-40 10 -10"> <Shape> <Appearance> <Material ambientIntensity="0.1". 77.

(12) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. diffuseColor="0.2 0.9 0.8" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="0.2 18 40"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="40 10 -10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.9 0.8" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="0.2 18 40"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 23 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.3 0.9" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="80 8 0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="5 5 5" translation="0 23 10"> <Inline url="ht.x3d"/> </Transform> <!-- =============================================================== --> <Group> <Transform DEF="fly1" translation="0 0 -8"> <Transform rotation="0 0 1 3.14" scale="0.5 0.5 0.5" translation="0 10 0"> <Inline url="sz7.x3d"/> </Transform> <Transform rotation="0 1 0 0" scale="1.5 1.5 1.5" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform>. 78.

(13) 第4章 X3D 三维立体展馆设计. <TimeSensor DEF="time1" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time1" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly1"/> <Group> <Transform DEF="fly2" translation="-10 0 -15"> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 5 0"> <Inline url="wx1.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 2.5 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="5" radius="0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time2" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time2" toField="set_fraction" toNode="flyinter"/>. 79.

(14) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly2"/> <Group> <Transform DEF="fly3" translation="10 0 -15"> <Transform rotation="0 0 1 0" scale="1.5 1.5 1.5" translation="0 5 1"> <Inline url="wx2.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 2.5 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="5" radius="0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time3" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time3" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly3"/> <Group> <Transform DEF="fly3" translation="20 0 -10"> <Transform rotation="0 0 1 0" scale="0.01 0.01 0.01" translation="0 5 0"> <Inline url="ktq1.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 2.5 0">. 80.

(15) 第4章 X3D 三维立体展馆设计. <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="5" radius="0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time3" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time3" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly3"/> <Group> <Transform DEF="fly3" translation="-20 0 -10"> <Transform rotation="0 0 1 0" scale="0.5 0.5 0.5" translation="0 5.5 0"> <Inline url="ktq2.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 2.5 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="5" radius="0.2"/> </Shape> </Transform>. 81.

(16) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="2.5"/> </Shape> </Transform> <TimeSensor DEF="time3" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time3" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly3"/> </Scene> </X3D>. 航天展览场景造型设计运行程序,首先,启动 BS_Contact_VRML/X3D 或 xj3d-browser 浏览器,然后打开“X3D 源程序实例/第 4 章源程序实例/px3d4-3.x3d”,即可运行虚拟现实 X3D 航天展馆三维立体动态场景造型设计效果,如图 4-6 所示。. 图 4-6 82. 航天展馆场景造型设计三维立体效果.

(17) 第4章 X3D 三维立体展馆设计. 4.4. 海军航母舰艇博览场景设计. 海军航母舰艇博览场景设计是利用天空、海洋和舰艇组合构成三维立体场景和造型。利 用虚拟现实语言 X3D 中的几何节点、复杂节点、组节点及智能动态感知动画节点技术,创建 一个海军航母舰艇博览三维立体动态场景和造型。使用文字造型节点、面节点及造型外观材料 节点创建一个复杂造型,运用动画节点创建波浪,使浏览者产生身临其境的感受。 4.4.1 海军航母舰艇博览场景设计 海军航母舰艇博览场景设计,利用几何节点、复杂节点以及造型外观材料节点进行颜色 绘制设计,采用内联节点实现子程序调用,实现绚丽海军航母舰艇博览场景设计。 海军航母舰艇博览场景设计由 X3D 头节点、场景根节点、基本几何节点、复杂节点、纹 理节点、内联节点及动态感知动画节点等构成,利用复杂节点创建舰艇造型,运用几何节点的 组合和造型外观颜色设计,构造一个太阳,使用智能动态感知动画节点创建海军航母舰艇航行 场景。 海军航母舰艇博览场景层次结构如图 4-7 所示。 X3D 节点. 海军航母舰艇博览场景设计. 海洋场景 设计. 航空母舰 造型设计. 图 4-7. 驱逐舰造型 设计. 战略舰造型设 计. 航母舰艇航 行设计. 海军航母舰艇博览层次结构. 4.4.2 海军航母舰艇博览场景源程序实例 海军航母舰艇博览场景设计是利用虚拟现实 X3D 三维立体网络程序设计语言中提供的基 本几何节点、复杂节点及智能动态感知动画节点开发与设计。使用背景节点、球体节点、面节 点、坐标变换节点以及内联节点等,采用球体节点创建一个太阳,利用组节点、坐标变换节点、 面节点创建舰艇造型,背景节点创建天空场景,利用内联节点实现模块化设计。 利用 X3D-Edit 专用编辑器或记事本编辑器直接编写*.x3d 源程序,在正确安装 X3D-Edit 专用编辑器前提下,启动 X3D-Edit 专用编辑器进行编程。利用 X3D 基本几何节点、背景节点、 纹理节点、复杂节点、内联节点以及智能动态感知动画节点等编写 X3D 源程序。 本书附带光盘目录中,在“X3D 源程序实例/第 4 章源程序实例/”目录下,提供 X3D 源 程序:px3d4-4.x3d 源程序。 【实例 4-4】海军航母舰艇博览场景设计 px3d4-4.x3d 源程序,利用 X3D 基本语法、几何. 83.

(18) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. 节点、复杂节点开发与设计编写源程序,使用 X3D 背景节点、球节点、坐标变换节点、组节 点、造型外观节点及内联节点等设计编写,源程序展示如下: X3D 虚拟现实海军航母舰艇博览场景设计 px3d4-4.x3d 主程序 <?xml version="1.0" encoding="UTF-8"?> <X3D profile="Immersive" version="3.2"> <head> <meta content="px3d4-4.x3d" name="filename"/> <meta content="zjz-zjr-zjd" name="author"/> <meta content="*enter name of original author here*" name="creator"/> <meta content="*enter copyright information here* Example: Copyright (c) Web3D Consortium Inc. 2008" name="rights"/> <meta content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/> <meta content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/> </head> <Scene> <Background DEF="_Background" skyAngle='1.571' skyColor='0.2 0.2 1,1 1 1'> </Background> <Viewpoint DEF="_Viewpoint_2" jump='false' orientation='0 1 0 0' position='-20 20 200' description="View3"> </Viewpoint> <Viewpoint DEF="_Viewpoint" jump='false' orientation='0 1 0 0' position='0 100 800' description="View1"> </Viewpoint> <Viewpoint DEF="_Viewpoint_1" jump='false' orientation='0 1 0 -0.2' position='0 50 500' description="View2"> </Viewpoint> <Viewpoint DEF="_Viewpoint_3" jump='false' orientation='0 1 0 -0.2' position='0 0 -5' description="View4"> </Viewpoint> <Transform DEF="_Transform" rotation='0 1 0 1.571' scale='1.5 1.5 1.5' translation='-5.5 -9.8 -52'> <Inline url='"hailang.x3d"' bboxCenter='0 0.917173 0' bboxSize='312 4.89593 234'/> </Transform> <Transform bboxCenter="0 0 0" bboxSize="-1 -1 -1" center="0 0 0" rotation="0 0 1 0" scale="10 10 10" translation="50 98 -282"> <Shape> <Appearance> <Material ambientIntensity="0.4" diffuseColor="0.9 0.2 0.0" shininess="0.2" specularColor="0.7 0.7 0.6" transparency="0"/> </Appearance> <Sphere radius="2"/> </Shape> </Transform>. 84.

(19) 第4章 X3D 三维立体展馆设计. <Transform scale='10 10 10' translation='-20 50 100'> <Inline url="hmjt.x3d" bboxCenter='0 4 0' bboxSize='1 8 0'/> </Transform> <Group> <Background skyColor='0.2 0.3 0.6'> </Background> <Transform DEF="fly1" rotation='0 1 0 0' translation='-32.5 -4 -25' scale='0.06 0.06 0.06'> <Inline url="hangmu.x3d"/> </Transform> <TimeSensor DEF="Time" cycleInterval='20' loop='true'> </TimeSensor> <PositionInterpolator DEF="flyinter" key='0,0.2,0.4,0.5,0.6,0.8,0.9,1' keyValue='285 -8 -25,25 -8 -25,0 -8 -25,-25 -8 -25,-65 -8 -25, -125 -8 -25,-285 -8 -25, -285 -100 -25,285 -8 -25'> </PositionInterpolator> </Group> <ROUTE fromNode="Time" fromField="fraction_changed" toNode="flyinter" toField="set_fraction"/> <ROUTE fromNode="flyinter" fromField="value_changed" toNode="fly1" toField="set_translation"/> <Group> <Background skyColor='0.2 0.3 0.6'> </Background> <Transform DEF="fly2" rotation='0 1 0 -1.571' translation='-32.5 -4 -25' scale='0.006 0.006 0.006'> <Inline url="zhj1.x3d"/> </Transform> <TimeSensor DEF="Time" cycleInterval='20' loop='true'> </TimeSensor> <PositionInterpolator DEF="flyinter" key='0,0.2,0.4,0.5,0.6,0.8,0.9,1' keyValue='285 -5 85,65 -5 85,25 -5 85,0 -5 85,-25 -5 85,-55 -5 85, -285 -5 85, -285 -100 -25,285 -5 85'> </PositionInterpolator> </Group> <ROUTE fromNode="Time" fromField="fraction_changed" toNode="flyinter" toField="set_fraction"/> <ROUTE fromNode="flyinter" fromField="value_changed" toNode="fly2" toField="set_translation"/> <Group>. 85.

(20) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. <Background skyColor='0.2 0.3 0.6'> </Background> <Transform DEF="fly3" rotation='0 1 0 -1.571' translation='-32.5 -4 -25' scale='0.004 0.004 0.004'> <Inline url="zhj2.x3d"/> </Transform> <TimeSensor DEF="Time" cycleInterval='20' loop='true'> </TimeSensor> <PositionInterpolator DEF="flyinter" key='0,0.2,0.4,0.5,0.6,0.8,0.9,1' keyValue='285 -5 -125,65 -5 -125,25 -5 -125,0 -5 -125,-25 -5 -125, -55 -5 -125,-285 -5 -125, -285 -100 -25,285 -5 -125'> </PositionInterpolator> </Group> <ROUTE fromNode="Time" fromField="fraction_changed" toNode="flyinter" toField="set_fraction"/> <ROUTE fromNode="flyinter" fromField="value_changed" toNode="fly3" toField="set_translation"/> </Scene> </X3D>. 海军航母舰艇博览场景造型运行程序,首先,启动 BS_Contact_VRML/X3D 浏览器,然后 打开“X3D 源程序实例/第 4 章源程序实例/px3d4-4.x3d”,即可运行虚拟现实 X3D 海军航母舰 艇博览三维立体场景造型,如图 4-8 所示。. 图 4-8. 86. 海军航母舰艇博览三维立体造型效果.

(21) 第4章 X3D 三维立体展馆设计. 4.5. 陆军兵器展馆场景设计. 陆军兵器展馆场景设计是利用兵器展馆场景、装甲车、坦克和地对空导弹等组合构成三 维立体场景和造型。利用虚拟现实语言 X3D 中的几何节点、复杂节点、组节点及智能感知动 画节点技术,创建一个陆军兵器展馆三维立体动态场景和造型。使用复杂造型节点创建文字造 型,利用面节点以及造型外观材料节点创建一个具有各种复杂造型、运用动画节点创建动感场 景效果,使浏览者体验身临其境的立体感受。 4.5.1 陆军兵器展馆场景设计 陆军兵器展馆场景设计利用几何节点、复杂节点、造型外观材料节点及智能动态感知动 画节点等进行设计,采用内联节点实现子程序调用,实现绚丽陆军兵器展馆场景设计。陆军兵 器展馆场景设计由 X3D 头节点、场景根节点、基本几何节点、复杂节点、纹理节点、内联节 点及动态感知动画节点等构成,利用复杂节点创建坦克、装甲车等造型,运用几何节点的组合 和造型外观颜色设计创建构造一个兵器展馆场景,使用智能感知动画节点创建兵器展馆场景动 画效果。 陆军兵器展馆场景设计层次结构如图 4-9 所示。 X3D 节点. 陆军兵器展馆场景设计. 兵器展馆场景 设计. 坦克造型 设计. 图 4-9. 装甲车造型 设计. 地对空导弹 造型设计. 动态场景效果 设计. 陆军兵器展馆场景层次结构. 4.5.2 陆军兵器展馆场景源程序实例 陆军兵器展馆场景设计是利用虚拟现实 X3D 三维立体网络程序设计语言中提供的基本几 何节点、复杂节点以及智能动态感知动画节点开发与设计。使用背景节点、立方体节点、面节 点、坐标变换节点及内联节点等,采用立方体节点创建一个兵器展馆场景,利用组节点、坐标 变换节点、面节点创建装甲车、坦克及地对空导弹造型,背景节点创建天空场景,利用内联节 点实现模块化设计。 利用 X3D-Edit 专用编辑器或记事本编辑器直接编写*.x3d 源程序,在正确安装 X3D-Edit 专用编辑器的前提下,启动 X3D-Edit 专用编辑器进行编程。利用 X3D 基本几何节点、背景节 点、纹理节点、复杂节点、内联节点及智能动态感知动画节点等编写 X3D 源程序。 本书附带光盘目录中,在“X3D 源程序实例/第 4 章源程序实例/”目录下,提供 X3D 源. 87.

(22) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. 程序:px3d4-5.x3d 源程序。 【实例 4-5】陆军兵器展馆场景设计 px3d4-5.x3d 源程序,利用 X3D 基本几何节点、复杂 节点及动态感知动画节点开发与设计编写源程序,使用 X3D 背景节点、立方体节点、坐标变 换节点、组节点、造型外观节点及内联节点等设计编写,源程序展示如下: X3D 虚拟现实陆军兵器展馆场景设计 px3d4-5.x3d 主程序 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE X3D PUBLIC "http://www.web3d.org/specifications/x3d-3.2.dtd" "file:///www.web3d.org/TaskGroups/x3d/translation/x3d-3.2.dtd"> <X3D profile="Immersive" version="3.2" xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xsd:noNamespaceSchemaLocation="http://www.web3d.org/specifications/x3d-3.2.xsd"> <head> <meta content="px3d4-5.x3d" name="filename"/> <meta content="zjz-zjr-zjd" name="author"/> <meta content="*enter name of original author here*" name="creator"/> <meta content="*enter copyright information here* Example: Copyright (c) Web3D Consortium Inc. 2008" name="rights"/> <meta content="*enter online Uniform Resource Identifier (URI) or Uniform Resource Locator (URL) address for this file here*" name="identifier"/> <meta content="X3D-Edit, http://www.web3d.org/x3d/content/README.X3D-Edit.html" name="generator"/> </head> <Scene> <Background skyColor="0.98 0.98 0.98"/> <Viewpoint description="viewpoint1" orientation="0 1 0 0" position="0 8 16"/> <Viewpoint description="viewpoint1" orientation="0 1 0 0" position="0 8 56"/> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 10 -30"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.3 0.9" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="80 18 0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="3 3 3" translation="0 15 -30"> <Inline url="bingqiz.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="-40 10 -10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.9 0.8" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/>. 88.

(23) 第4章 X3D 三维立体展馆设计. </Appearance> <Box size="0.2 18 40"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="40 10 -10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.9 0.8" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="0.2 18 40"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 23 10"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.2 0.3 0.9" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Box size="80 8 0.2"/> </Shape> </Transform> <Transform rotation="0 0 1 0" scale="5 5 5" translation="0 23 10"> <Inline url="bingqiz.x3d"/> </Transform> <!-- ================================================================= --> <Group> <Transform DEF="fly1" translation="0 0 -8"> <Transform rotation="0 0 1 0" scale="0.002 0.002 0.002" translation="0 2 0"> <Inline url="zjc1.x3d"/> </Transform> <Transform rotation="0 1 0 0" scale="1.5 1.5 1.5" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="5.5"/> </Shape> </Transform> <TimeSensor DEF="time1" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter". 89.

(24) X3D 动 画 游 戏 设 计 — 虚拟人、全景技术、影视媒体、游戏动画设计源程序. key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time1" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly1"/> <Group> <Transform DEF="fly2" translation="-20 0 -25"> <Transform rotation="0 0 1 0" scale="0.002 0.002 0.002" translation="0 2 0"> <Inline url="zjc2.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1" diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0.0"/> </Appearance> <Cylinder height="0.2" radius="8.5"/> </Shape> </Transform> <TimeSensor DEF="time2" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time2" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly2"/> <Group> <Transform DEF="fly3" translation="20 0 -25"> <Transform rotation="0 0 1 0" scale="0.002 0.002 0.002" translation="0 2 1"> <Inline url="tank1.x3d"/> </Transform> <Transform rotation="0 0 1 0" scale="1 1 1" translation="0 -0.1 0"> <Shape> <Appearance> <Material ambientIntensity="0.1". 90.

(25) 第4章 X3D 三维立体展馆设计. diffuseColor="0.5 0.5 0.7" shininess="0.15" specularColor="0.8 0.8 0.9" transparency="0"/> </Appearance> <Cylinder height="0.2" radius="8.5"/> </Shape> </Transform> <TimeSensor DEF="time3" cycleInterval="8.0" loop="true"/> <OrientationInterpolator DEF="flyinter" key="0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,10" keyValue="0 1 0 0.0, 0 1 0 0.785,0 1 0 1.571,0 1 0 2.356&#10;0 1 0 3.141,0 1 0 3.926, 0 1 0 4.712,&#10;0 1 0 5.497 ,0 1 0 6.282"/> </Transform> </Group> <ROUTE fromField="fraction_changed" fromNode="time3" toField="set_fraction" toNode="flyinter"/> <ROUTE fromField="value_changed" fromNode="flyinter" toField="set_rotation" toNode="fly3"/> </Scene> </X3D>. X3D 虚拟现实陆军兵器展馆场景造型运行程序,首先,启动 BS_Contact_VRML/X3D 浏 览器,然后打开“X3D 源程序实例/第 4 章源程序实例/px3d4-5.x3d”,即可运行虚拟现实 X3D 陆军兵器展馆三维立体场景造型,如图 4-10 所示。. 图 4-10. 陆军兵器展馆三维立体造型效果. 91.

(26)

參考文獻

相關文件

按不动产所在地点、贷款类别、贷款金额及不动产类别统计之订立契约的不涉及买卖之不动

按不动产所在地点、贷款类别、贷款金额及不动产类别统计之订立契约的不涉及买卖之不动产

按不动产所在地点、贷款类别、贷款金额及不动产类别统计之订立契约的不涉及买卖之不动产

按不动产所在地点、贷款类别、贷款金额及不动产类别统计之订立契约的不涉及买卖之不动

经营费用:包括自用物料、水费、燃料、电费、保养及维修、场所租金、机器及设备租金、机动车租赁、连司机的

会议及展览统计涵盖在澳门各酒店及大型会议展览中心等收费场地举行的四小时及以上之会议及展览;但不包括少于10

37 造園景觀 張浩穎 1 國立龍潭高級農工職業學校 37 造園景觀 林蔓妮 2 國立桃園高級農工職業學校 37 造園景觀 鄭雅玲 2 國立桃園高級農工職業學校 37 造園景觀

37-1 造園景觀(成人組) 黃泰源 5 行政院勞工委員會職業訓練局中區職業訓練中心. 37-1 造園景觀(成人組) 巫宗雨