BIGWORLD File Grammar Guide
BIGWORLD File Grammar Guide
1.概述
本文档详细介绍了BigWorld技术在客户端和服务器端使用的文件的语法。
除了文件的语法之外,每个部分都描述了文件的用途,以及在适用的情况下对进一步信息的引用。
2.alias.xml
用于创建数据类型别名
3.BinSection files
二进制数据文件
4.ZipSection files
ZipSection文件ZipSection可以被解释为数据段的集合。在存储时,zipsection使用PKZIP文件格式(通过zipFileSystemclass)对多个数据节进行分组和压缩,保持层次结构。
5. Brush files
笔刷文件
6.capabilities.xml
关于匹配触发器和能力标志的详细信息
7. .cdata
包含二进制地形和光照数据,详细用法参照ZipSection files
7.1 terrain2 resources
terrain2 section包含在一块,它包含了块中地形的所有资源。
- heights sections 高度部分存储地形块的高度图。
- layer sections 层段存储地形块的纹理层。
- normals & lodNormals sections 法线部分存储了地形块的高分辨率法线贴图。
- holes section 存储地形块的holemap,只有当地形块中有holes时才存储该部分
- horizonShadows section 存储了地形块的地平线阴影
- lodTexture.dds section 存储地形块的LOD纹理。LOD纹理是所有纹理层混合在一起的低分辨率快照。
- dominantTextures section 存储了主要的纹理图。主导纹理地图存储地形块中每个x/z位置的最高混合纹理。
8. .chunk
- <chunk>o.chunk (作用于外部)
- <chunk>i.chunk (作用于内部)
这些文件包含场景对象列表,纹理集,碰撞场景等
9. common_options.xml
用于保存多个BigWorld工具通用的设置和选项。
10. dxenum.xml
BigWorld的枚举文件(dxenum.xml和.**<enumeration>xml)提供了在DirectX中定义的枚举值的描述,以便它们可以在源文件(如FX文件)和BigWorld工具(如模型编辑器)中使用。
具体见: <enumeration>.xml
11. EffectMaterial section
由EffectMaterial类使用,这个部分包含材料信息
12. exporter.xml
有关3ds Max和Maya exporter
13. filters.xml
过滤器。世界编辑器用于配置地形过滤面板中可用的过滤器,该文件位于underbigworld/tools/worldeditor/resources/data。
14. flags.xml
模型编辑器用来在属性视图中显示材质碰撞标志,这个文件位于bigworld/tools/worldEditor/Resources下。
15. .font
字体文件
16. girths.xml
包含NavGen和脱机处理器用于生成导航网格的设置。
17. .gui
用于持久化GUI层次结构,这些文件位于fantasydemo/res/ GUI下。
有关每个部分(GUI类)和标签(GUI成员)的详细描述,请参见Client Python API的条目Modules GUI。
18. gui.xml
GUI XML文件用于配置World Editor的菜单和工具栏。在bigworld/tools/worldeditor/resources/data中定义。
19. LightMapSection
flora和sky的配置文件有一个light_map部分,指定了各自元素如何应用光的设置。
20. material_kinds.xml
在模型编辑器的材料设置面板的材料类型下拉列表框中定义要显示的材料类型。
21. .mfm
位于 <res>资源文件树中。
常用标签 EffectMaterial
22. .model
定义在<res>资源树下的各种子文件夹(例如:<res>/environments,<res>/flora, <res>/sets/vehicles, etc…)
23. modules.xml
由客户端工具World Editor, Model Editor和Particle Editor使用,位于bigworld/tools/
24. .mvl
mvl文件是特定于模型编辑器的。它们只用于观察不同光照条件下的模型。您可以根据需要创建、加载、保存和配置它们,但是它们只在Model Editor中使用。
25. navgen_settings.xml
关于NavGen的详细信息,请参见Content Tools Reference Guide,中NavGen→“Changing settings”一节。
26. options.xml
不同的工具使用一个名为options.xml的配置文件。配置如下
- CAT → Client Access Tool
- Model Editor
- Particle Editor
- World Editor
27. PackedSection files
PackedSection文件是用BNF格式描述的只读数据段。
在packkedsection文件中,整数被略微优化(例如,如果值为零,则不存储数据;如果value是一个int8(Byte即一个字节),那么将存储1个字节,依此类推)。
28. path.xml
以下文件夹包含paths.xml的版本:
- bigworld/tools/exporter/3dsmax<version>
- bigworld/tools/exporter/maya<version>
- bigworld/tools/misc
- bigworld/tools/modeleditor
- bigworld/tools/particleeditor
- bigworld/tools/worldeditor
- fantasydemo/game
29. .ppchain
PPChain文件保存在世界编辑器的后期处理编辑器面板。它们描述了整个链,或者部分链。默认情况下,它们位于 <res>system/post_processing/chains s文件夹中。
30. . primitives
. primitives定义在资源树下的各种子文件夹中,例如: <res>/environments,<res>/flora,<res>/sets/vehicles。primitives文件使用BigWorld文件系统将二进制数据的离散位保存在一个文件中。
- Vertex data section,带有顶点数据的部分包含一个小标题,后面是原始顶点数据。
- Index data section,包含索引数据的部分包含一个小标题和原始索引数据,后面是原始组。
- BSP data section,带有BSP数据的部分包含一个小报头,后面是原始BSP数据。
31. shadows.xml
位于bigworld/res/system/data下,这个文件被3D游戏引擎用来配置各种阴影功能.
32. space.settings
包含环境设置、网格正方形的边框等…
33. .texanim
动画纹理可以通过模型编辑器应用到材质。
<texture>.texanim文件格式
1 | <root> |
34. .texformat
位于<res>文件夹下,texture_detail_levels.xml 和 .texformat文件,分别为文件名匹配条件、转换规则。
35. texture_detail_levels.xml
文件命名规则
36. ual_config.xml
该文件配置资产浏览器的外观、布局和工作的各个方面
使用它的BigWorld工具(世界编辑器、模型编辑器和粒子编辑器)位于 bigworld/tools/<tool_folder>/resources/ual.
在文档内容工具参考指南的资产浏览器章节“定制”中提到,这个文件中的标签被记录在bigworld/Tools/ worlddeditor/resources/ual/ual_config.xml中。
37. .visual
定义在资源树下例如<res>/environments,
<res>/flora, <res>/sets/vehicles。
- NodeSection
- PortalSection,描述了邻近块的视线,应该只出现在shell中。
38. visual_rules.xml
3ds Max和Maya可视化导出器用于在导出之前验证文件,规则集定义在bigworld/tools/res/visual_rules.xml中。详细信息请参见《内容工具参考》
指南的章节3ds Max和玛雅出口商。
39. .xml
各种BigWorld文件都使用XML格式,本章将介绍以下几种文件的语法:
- <effect>.xml,用于客户端引擎配置镜头效果,位于 fantasydemo/res/environments/fx.
- <enumeration>.xml,BigWorld的枚举文件(dxenum.xml和<enumeration>.xml)提供了在DirectX中定义的枚举值的描述,以便在源文件(如FX文件)和BigWorld工具中使用(例如模型编辑器).
- <flora>.xml,Flora配置文件的位置由<res>/resources.xml中的floraXML标记设置,XML植物群文件定义了要使用的灯光图,以及生态类型和噪声生成函数。
- <graphics_settings>.xml,图形设置配置文件的位置由resources.xml中的graphicsSettingsXML标记设置(详细信息请 Client Programming Guide’s section Overview → “Configuration files” → “File resources.xml”)。
- <light>.xml,灯光配置文件。
- <mouse_cursors>.xml,由客户端引擎用来定义游戏中可用的鼠标光标形状,鼠标光标定义文件可以在res/resources.xml中的标签gui/cursorDefinitions中指定,但默认为res/gui/mouse_cursor.xml。
- <particle>.xml,粒子系统。
- <sky>.xml,Sky配置文件由空间使用,并且可以位于您选择的任何文件夹中,因为它们的位置是由<res>/spaces/<space>/space中的timeOfDay标记设置的
- <fx>.xml,FX文件由python FX模块使用,可以放在您选择的任何文件夹中。FX文件是基于actor的。对于每个参与者,您应该指定一个Joint。对于每个参与者,您可以指定任意数量的Events。每个Actor、Joint或Event节都要求将参与者的名称指定为其节名的字符串。
- <weather>.xml,weather XML文件为整个游戏指定了可用的天气系统列表。不同天气系统的数量由你决定。