mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-07 00:39:00 +08:00
docs(game): 同步配置入口采用边界
- 更新 Game 入口页的静态 YAML 配置接入提示,明确 Runtime 与 Source Generator 的共享契约优先级 - 补充安装入口对 additionalProperties: false 与 oneOf / anyOf 拒绝边界的 reader-facing 提示 - 优化入口页采用建议,说明复杂 shape 应回退到 raw YAML 与 schema 设计本体
This commit is contained in:
parent
0721cafd03
commit
56a96b50fd
@ -83,6 +83,13 @@ IStorage storage = new FileStorage("GameData", serializer);
|
||||
- `GFramework.Game.SourceGenerators`
|
||||
- `schemas/**/*.schema.json` + `config/**/*.yaml`
|
||||
|
||||
这条工作流的正式契约,以 `GFramework.Game` Runtime 和 `GFramework.Game.SourceGenerators` 当前共享支持的 schema
|
||||
子集为准。`VS Code` 配置工具主要负责编辑期提示和表单辅助,不单独扩展运行时可接受的 schema 形状。
|
||||
|
||||
开始接入时,建议先把 schema 约束控制在共享子集内,并尽早确认像 `additionalProperties: false` 这类已收口的对象边界,以及
|
||||
`oneOf` / `anyOf` 当前会被直接拒绝,而不是在工具里看起来“可以先写”。如果你的配置模型需要更深层的嵌套数组、联合分支或其他超出共享子集的复杂
|
||||
shape,优先回到 raw YAML 和 schema 设计本体处理,再决定是否拆分结构或调整约束方式。
|
||||
|
||||
完整约定见:
|
||||
|
||||
- [配置系统](./config-system.md)
|
||||
@ -120,7 +127,7 @@ IStorage storage = new FileStorage("GameData", serializer);
|
||||
- 运行时入口主要来自 `GFramework.Game`
|
||||
- 只依赖接口或拆分业务层时,补充 `GFramework.Game.Abstractions`
|
||||
- 需要静态内容配置类型和表包装生成时,再追加 `GFramework.Game.SourceGenerators`
|
||||
- 需要编辑器侧内容维护工作流时,再看 [VS Code 配置工具](./config-tool.md)
|
||||
- 需要编辑器侧内容维护工作流时,再看 [VS Code 配置工具](./config-tool.md),并把它视为共享契约之上的辅助层
|
||||
|
||||
## 对应模块入口
|
||||
|
||||
|
||||
@ -46,6 +46,8 @@ GFramework 采用模块化设计,不同包提供不同的功能:
|
||||
- Arch ECS:直接安装 `GeWuYou.GFramework.Ecs.Arch`;如果只想共享宿主循环或接口边界,可改为 `GeWuYou.GFramework.Ecs.Arch.Abstractions`
|
||||
|
||||
如果你准备采用 AI-First 配置工作流,可以继续阅读 [游戏内容配置系统](../game/config-system.md) 与 [VS Code 配置工具](../game/config-tool.md)。
|
||||
接入时建议先按 Runtime + Source Generator 的共享 schema 子集设计配置模型,再把 `VS Code` 工具当作编辑辅助层来使用,而不是反过来以工具界面可编辑的 shape 作为正式契约。
|
||||
尤其需要尽早知道两个当前边界:对象闭合只收口到 `additionalProperties: false`,而 `oneOf` / `anyOf` 会被直接拒绝。若配置模型超出这组共享边界,优先回到 raw YAML 与 schema 本体调整结构,而不是把差异理解成工具遗漏能力。
|
||||
|
||||
## 安装方式
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user