Scene(场景)节点是包含所有X3D互动游戏场景语法定义的根节点,以此根节点增加需要的节点和子节点,以创建场景,在每个文件中只允许有一个Scene根节点。Scenefields体现了Script节点Browser类的功能,浏览器对这个节点fields的支持还在实验阶段,用Inline引用场景中的Scene节点和根Scene节点产生相同效果的值。
Scene(场景)节点设计包括Scene节点定义、Scene节点语法结构图以及Scene节点详解等。Scene(场景)节点的语法定义如下:
X3D互动游戏场景设计节点语法结构图如图2-24所示。
在编写X3D互动游戏源代码时,为了使源代码结构更合理、更清晰,层次感更强,经常在源程序中添加注释信息。在X3D互动游戏文档中允许程序员在源代码中的任何地方添加注释说明,以进一步增加源程序的可读性,使X3D互动游戏源文件层次清晰、结构合理,形成文档资料,符合软件开发要求。在X3D互动游戏文档中添加注释的方式与XML的语法相同,例如:
图2-24 X3D互动游戏场景设计节点语法结构图
其中, !--Scenegraphnodesareaddedhere-- 是一个注释。X3D互动游戏文件注释部分以符号“ !--”开头,以“-- ”结束于该行的末尾,文件注释信息可以是一行,也可以是多行,但不允许嵌套,并且字符串“--”、“ ”和“ ”不能出现在注释中。
浏览器在浏览X3D互动游戏文件时将跳过注释部分的所有内容。另外,浏览器在浏览X3D互动游戏文件时将自动忽略X3D互动游戏文件中的所有空格和空行。
一个X3D互动游戏程序框架主要由X3D互动游戏节点、head头文件节点、component组件标签节点、meta节点、Scene场景节点以及几何节点等构成。
X3D互动游戏案例源程序展示如下:
WorldInfo信息化节点提供X3D互动游戏程序的标题和认证信息。标题信息可以表达程序的意义,而认证信息可以提供软件开发作者、完成时间、版本、版权等信息。WorldInfo信息化节点有利于软件开发的规范化、信息化以及工程化。在软件开发中应该经常使用WorldInfo信息化节点与程序注释,使开发者与读者都能很流畅地阅读和理解X3D互动游戏程序,有利于软件开发文档的形成与规范。WorldInfo信息化节点语法定义了一个用于确定信息化的属性名和域值,利用WorldInfo信息化节点的域名、域值、域的数据类型以及事件的存储访问权限的定义来创建一个效果更加理想的X3D互动游戏信息化节点效果。WorldInfo信息化节点的语法定义如下:
WorldInfo信息化节点包含DEF、USE、title、info、containerField以及class等域,SFString域包含一个字符串,是用双引号括起来的字符串。MFString域是一个含有零个或多个单值的多值域字符串,事件的存储/访问类型描述表示域(属性)的存储/访问类型,包括inputOnly(输入类型)、outputOnly(输出类型)、initializeOnly(初始化类型)以及inputOutput(输入/输出类型)等,用来描述该节点必须提供该属性值。