跳转至

Tileset

tileset 把游戏 ID/variant 映射到 sprite/tilesheet。运行时加载、composition、package metadata、ID fallback、rotation、multitile/connect rule、overlay 与许可证都属于契约。

权威路径

  • doc/TILESET.md 解释受支持 tile JSON 概念与 composition 模型;
  • gfx/ 包含 bundled tileset metadata/asset,gfx/tile_config_template.json 是起始形状, 不能替代真实 load;
  • src/sdltiles.* 与 tile loader 定义运行时行为;
  • .github/workflows/compose-tilesets.yml 定义受检查 composition 与可分发 asset。

所有权与 ID

游戏 JSON 拥有 entity ID;tile entry 引用 ID,并可增加 variant、rotation、multitile、 seasonal/gender form、overlay 或 fallback。重命名游戏 ID 未同步 tile 时,即使 JSON 加载 成功也可能静默退回 fallback art。

贡献流程

source sprite、tile entry JSON、tilesheet metadata 与 license/attribution 放在一起。使用 仓库 workflow/tool compose,审查 warning,再在 tiles build 启动结果。若 compositing source 才是维护输入,不要手改 generated tilesheet。

验证

验证 JSON/composition、缺失/重复 ID、sprite bound、fallback、rotation/connection、overlay、 zoom/scaling、map/overmap view 与干净 package load。在游戏中抽查变化 ID;composition 成功不能证明视觉正确。

性能与打包

atlas 尺寸、texture 数、fallback chain 与重复 variant lookup 会影响启动、内存与 redraw。 明确 generated sheet 与 source art 的角色;仓库 workflow 视作 generated 时,大型输出可 作为 release/CI artifact。

许可证

每个导入 sprite 都需要兼容 license/attribution。“来自上游 tileset”不是充分来源;记录 source repository/path、可得作者、license 与转换。