库与合集
“库”标签页、可复用资源的合集、它们从哪里来,以及它们如何进入关卡、又如何从关卡中取出
什么是合集
合集是一个存放可复用资源的文件夹。它可以包含以下七类资源:
| 类别 | 存储方式 |
|---|---|
| 预制件、主题、形状、特效 | 数据,每个条目一个文件 |
| 纹理、字体、音频 | 媒体文件 |
合集不属于任何关卡。它保存在你的设备上,你打开的每个关卡都能用
关卡从不引用合集。导入总是把内容复制到关卡中,所以关卡始终是一个自包含的文件夹,在哪里都能游玩
来源
库列出来自三个来源的资源。每个来源是列表上方的一个筛选标签:
| 标签 | 是什么 | 可修改 |
|---|---|---|
我的库 | 本设备的共享库:resources/prefabs、themes、shapes、effects | 是 |
我的合集 | 你自己的合集,resources/collections | 是 |
创意工坊 | 你在Steam创意工坊订阅的合集,直接在原位置读取。仅限Steam版本 | 否 |
只读合集的修改方式是:把它的条目复制到你自己的合集中
“库”标签页
库是编辑器主页上的一个标签页,紧跟在创建关卡之后
一列窄按钮用来选择类别:
合集预制件、主题、形状、特效纹理、字体、音频
列表在这一列的右侧
合集
新建合集创建一个空的合集导入压缩包从.zip、.tar.gz或.tar文件添加合集。如果设备上已有这个合集,游戏会询问是否替换刷新重新读取文件夹
每一行都有打开。你自己的合集还有删除。它会先询问,然后删除合集及其中的所有文件
合集页面
| 控件 | 作用 |
|---|---|
返回 | 回到列表 |
保存 | 写入改动。按下之前什么都不会写入 |
导出.zip、导出.tar.gz | 把合集保存为压缩包 |
封面 | 选择一张png图片作为封面 |
删除 | 询问后删除合集 |
字段有名称、描述、作者(用逗号分隔)和许可证(未说明或某个常见许可证)
下面是合集内容,每个条目都有移除
只读合集会显示只读。要修改条目,请把它们复制到你自己的合集
在Steam版本中,你自己的合集页面还有一个发布区域。更多:发布
预制件、主题、形状、特效
这些页面各自列出所有来源中的全部条目。筛选标签可以缩小列表
复制到从你自己的合集中选择目标,默认为不复制。选好目标后,每一行都会出现复制
可以修改的条目有删除,它会先询问
纹理、字体、音频
这些页面列出所有合集中的文件。文件没有个人库,所以这几类只存在于合集中。行上有复制和移除
复制会带上什么
复制会带上条目需要的一切:预制件的形状、纹理、字体和嵌套预制件,特效的粒子形状。这些资源的署名也会一并带上
“合集”标签页
合集是关卡设置中的一个标签页,紧跟在预制件之后。顶部有两种模式:导入和生成合集
导入
- 标签页列出合集。在需要的合集上按
打开 - 勾选需要的条目。
全选和全不选勾选全部或全部取消 已选:N,将添加依赖:M这一行显示将导入的内容。依赖会自动添加- 按
导入
整个导入是一次撤销步骤
纹理、字体和音频在关卡中总会得到新的id。它们的文件以唯一的名称复制到关卡文件夹中
生成合集
目标选择新合集或你自己的某个合集。新合集的名称取自名称- 勾选关卡的资源,七类中任意一类都可以
- 按
生成
新合集会沿用关卡的作者
受保护的关卡不能生成合集。更多:导出与保护
选择器与搜索
搜索和资源选择器中有一个库层级,用于预制件、主题、形状和特效。它列出所有来源。选择器指形状、碰撞体、特效和主题字段,以及放置预制件……
选择库中的条目会把它连同依赖一起导入关卡,并完成指定。遇到冲突时,会提出与“合集”标签页相同的问题
关卡各资源标签页里的库浏览器也按同样的方式工作,并显示来源标签。更多:关卡资源
冲突
要导入的条目可能已经以相同的id存在于关卡中:
- 内容相同:无需任何操作
- 内容不同:打开
关卡中已存在窗口
窗口列出每一个冲突,每个冲突都有一个作为副本导入开关:
| 选择 | 结果 |
|---|---|
| 保留(开关关闭) | 关卡的版本保留并被使用 |
作为副本导入 | 合集的版本以新的id加入。与它一起导入的内容都指向这个副本 |
全部保留和全部作为副本一次设置所有开关。导入应用选择,取消什么都不导入
没有哪个版本会被悄悄选中。每一个内容不同的冲突都在这个窗口里由你决定
署名
关卡的资源记录除了纹理、字体和音频,也涵盖主题、特效、形状和预制件。导入会把对应的记录复制到关卡中,所以署名会随资源一起到达
更多:资源记录
磁盘上的位置
合集存放在游戏数据文件夹的resources/collections/<collection-guid>/中。这就是levels旁边存放本设备共享库的那个resources文件夹。更多:关卡文件夹与备份
| 路径 | 内容 |
|---|---|
collection.json或collection.blob | 清单:名称、描述、作者、许可证、纹理、字体和音频条目,以及其中所有内容的署名 |
cover.png | 封面,可选 |
prefabs/、themes/、shapes/、effects/ | 每个条目一个<guid>.json或<guid>.blob,与本设备共享库中的文件相同 |
media/ | 纹理、字体和音频文件 |
合集以压缩包的形式传递:在合集页面上用导出.zip或导出.tar.gz,在列表中用导入压缩包。不是合集的压缩包会被拒绝
接下来:发布、复用:预制件、复制、生成器、资源记录