数据资源

来自Ballance Wiki
BallanceBug讨论 | 贡献2020年6月17日 (三) 12:18的版本 如何将 Ballance 游戏资源作为数据资源添加到 Virtools
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

数据资源 (Data Resources, 也被称作RSC目录) 是 Virtools 提供的在 Virtools 开发环境内快速浏览和使用资源的功能。我们可以在 Virtools 中将 Ballance 的根目录作为数据资源打开,这样就可以方便我们管理和整合资源,也在一定程度上获得更好的制图体验。

功能

在打开 Virtools 文件时, Virtools 会自动从打开的数据资源中搜寻未嵌入文件中的声音/贴图等资源。 将 Ballance 游戏资源作为数据资源添加到 Virtools 后,在 Virtools 中打开地图文件时,其中的贴图不会因找不到外部资源而无法载入;同时可以快速操作资源目录下的文件,便于制图或修改游戏配置。

如何将 Ballance 游戏资源作为数据资源添加到 Virtools

  1. 在与你的 Ballance 安装目录同级的目录中创建一个文本文件,在其中输入以下内容: Virtools RSC File 1.0
  2. 将此文件重命名为 Ballance 安装目录名.rsc
    • 例:假设你的 Ballance 安装目录名为 Ballance,则应该创建 Ballance.rsc
    • 注意关闭“隐藏已知文件类型的扩展名”选项。下面的例子展示了完成该步之后的结果 (Ballance 文件夹内为 Ballance 的文件)。
      Ballancersc location.jpg
  3. 在 Virtools 中,选择 Resources – Open Data Resource。选定刚才的 .rsc 文件。
    Virtools menu openDataResources.jpeg
  4. Virtools 中此时会打开一个新的标签,你可以直接使用拖放从 Ballance 的目录中导入资源。而且从此导入 Ballance 的 NMO 文件时,贴图都可以自动载入了。
    Virtools dialog openDataResources.jpeg
  5. (如果不想让 Virtools 将贴图嵌入到 NMO 文件中使 NMO 文件体积变大,这也是当前的制图的基本标准所规定的) 按 Ctrl + P,或是使用 Options – General Preferences 打开 Virtools 的通用首选项设置 (General Preferences) 对话框,在 Current Prefs 下拉列表中选择 Miscellaneous Controls (杂项设置)。将 Textures/Sprites save options (贴图/精灵图保存设定) 改为 External Files (外部文件)。这样 Virtools 就不会默认将载入的贴图嵌入到 NMO 文件中了。
    • 若需要修改单独一张贴图的文件嵌入设定,请使用对应贴图的 Texture Setup 中的 Save Options 选项。例如,若要单独设置某一张贴图内置,需要将之对应的选项(而非通用首选项)改为 Raw Data。
      Virtools externalResources.jpeg
  • 值得一提的是,为了进一步压缩文件大小,建议将 Compress file using compression level 选中并设为 9,并将 Image Quantization Quality 拖动至最右侧,设为 100(图中未示出)。

技术信息

你可以使用上方第三步图片内的 Create New Data Resource 来创建新的数据资源目录。该操作会创建一个 .rsc 文件以及一个与其文件名相同的文件夹,其中已经为你建好了常用资源类型的目录。

数据资源的每个资源目录里面都需要包含一个文件名为 _marker_ 的文件,用于确定该目录中资源的类型。该文件为一个文本文件,其中包含两行。第一行为一个数字,为该目录中资源类型的ID[1],第二行为用户对该目录中资源的描述,可以视为注释。

CK2类 数字ID 类型
CKCID_BEHAVIOR 8 行为
CKCID_CHARACTER 40 人物模型
CKCID_ANIMATION 16 动画
CKCID_3DENTITY 33 三维实体
CKCID_SPRITE 28 精灵图
CKCID_SPRITE3D 37 三维精灵图
CKCID_MATERIAL 30 材质
CKCID_VIDEO 57 视频
CKCID_TEXTURE 31 贴图
CKCID_SOUND 24 声音

如果一个目录中没有 _marker_ 文件,则该目录会继承其上级目录的资源类型。Virtools 的资源浏览器只会显示文件类型与本目录的资源类型相符的文件。对于没有指定合法的资源类型的目录,其中的文件不会在 Virtools 中显示。

注释

  1. 此数字决定导入该目录中的资源时 Virtools 创建的对象的类型。假设有一个包含图片的资源目录,若其中的 _marker_ 文件指定的资源类型为贴图,则在导入其中的图片时只会创建一个贴图对象。若 _marker_ 文件指定的资源类型为 3D Sprite ,则导入其中的图片时 Virtools 不仅会创建贴图对象,还会创建一个使用该贴图的材质对象和使用此材质的 3D Sprite 对象。