games-development-ai/docs/architecture/assets/03-两条生成轨边界.svg
lili 0000ade12d docs(svg): 全域 SVG reframe doc-sync — 配图两线→三档 + 脚注死链 repoint
- 结构重画:03-两条生成轨边界 / 07-全局两线与tier体系(两泳道→三档统一 AgentScope、引擎随复杂度选 LittleJS/Phaser)。
- 文字/framing(全域 SVG):两线→三档、SAA 廉价线→便宜档、AgentScope premium 独立轨→统一框架、超休闲档→轻量、tier2 远期/待 spike→accept(实线)。
- 脚注死链:自治富游戏引擎.md / agentic集成架构.md / tier2实现详设.md / tier2四层工程架构.md(均已并入 SoT)→ agentic运行时架构图说.md;全域 SVG 零死链。
- 07-泳道 tier2 框 紫虚线→实线现行(accept、核心已落)。
- MD doc-sync:删 4 处"待重绘 mini-desktop"注(图已重画)、①③ §0 / README / SoT 注脚去 mini-desktop(全归本机)。
- atlas house-style 复验:良构 / 界内 / 脚注全角「:」/ 无裸& 全绿;t2-E-04「两线分立(06-23)」已加注 06-25 reframe 取代之、作留痕。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 13:07:49 -07:00

161 lines
14 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1480 940" font-family="-apple-system,'PingFang SC','Microsoft YaHei',Segoe UI,sans-serif">
<defs>
<marker id="arrow" markerWidth="10" markerHeight="10" refX="8" refY="3" orient="auto" markerUnits="strokeWidth"><path d="M0,0 L8,3 L0,6 Z" fill="#334155"/></marker>
<marker id="arrowP" markerWidth="10" markerHeight="10" refX="8" refY="3" orient="auto" markerUnits="strokeWidth"><path d="M0,0 L8,3 L0,6 Z" fill="#7c3aed"/></marker>
<style>
.t{fill:#0f172a}.mut{fill:#475569}.sm{font-size:12px}.xs{font-size:11px}.xxs{font-size:10px}
.h1{font-size:24px;font-weight:700}.h2{font-size:14px;font-weight:700}.lbl{font-size:13px;font-weight:600}
.flow{stroke:#334155;stroke-width:2;fill:none}.flowb{stroke:#64748b;stroke-width:1.6;fill:none;stroke-dasharray:6 4}
.flowp{stroke:#7c3aed;stroke-width:1.8;fill:none;stroke-dasharray:6 4}
.badge{font-size:10.5px;font-weight:700}.fut{font-size:11px;font-weight:700;fill:#7c3aed}
</style>
</defs>
<rect x="0" y="0" width="1480" height="940" fill="#f8fafc"/>
<text x="40" y="38" class="t h1">图 3 · 三档生成(按 AI 参与深度统一框架)与引擎选型</text>
<text x="40" y="58" class="mut sm">生成收敛到 AgentScope 一套自治 agent 框架,按 AI 参与深度分 Tier0/1/2 三档;级别越高 AI 写得越多。三档全高度模板化(玩法模板 + 工程脚手架,非从零),引擎随表现复杂度选 LittleJS / Phaser。各档运行期零耦合,只经公共件交汇。</text>
<!-- 统一框架横条 -->
<rect x="40" y="76" width="1400" height="58" rx="10" fill="#eef2ff" stroke="#4338ca" stroke-width="2.2"/>
<text x="56" y="100" class="t h2" fill="#3730a3">统一编排框架 · AgentScope 一套自治 agent(Python)——三档共用,按 AI 参与深度调档</text>
<text x="56" y="120" class="xs mut">分档的轴只有「AI 参与深度」一条;引擎只是按复杂度选的实现变体、不是分档轴。三档全模板化:在玩法模板 + 工程脚手架上,按档位深浅填数值 / 写逻辑 / 写表现层。最低档也要能商业闭环,不做无法变现的超休闲玩具。</text>
<!-- 入口 brief -->
<rect x="565" y="146" width="350" height="44" rx="10" fill="#e2e8f0" stroke="#0f172a" stroke-width="2"/>
<text x="740" y="167" text-anchor="middle" class="t lbl">用户一句话 brief + play_spec</text>
<text x="740" y="183" text-anchor="middle" class="mut xs">按 AI 参与深度分档(Tier0 → Tier1 → Tier2,渐深)</text>
<line x1="640" y1="190" x2="240" y2="216" class="flow" marker-end="url(#arrow)"/>
<line x1="740" y1="190" x2="740" y2="216" class="flow" marker-end="url(#arrow)"/>
<line x1="840" y1="190" x2="1240" y2="216" class="flow" marker-end="url(#arrow)"/>
<!-- Tier0 档 -->
<rect x="40" y="218" width="445" height="404" rx="14" fill="#eff6ff" stroke="#2563eb" stroke-width="2.4"/>
<text x="56" y="244" class="t h2">Tier0 · 浅介入档(已落)</text>
<text x="56" y="263" class="xs mut">承载:轻量单局 —— 点选 / 合成 / 答题 / 躲避(照模板填,AI 介入最浅)</text>
<rect x="56" y="276" width="413" height="42" rx="8" fill="#dbeafe" stroke="#2563eb" stroke-width="1.5"/>
<text x="66" y="296" class="t lbl">AI 职责:照玩法模板填数值 / 文案 / 资产变体</text>
<text x="66" y="312" class="xxs mut">填空式生成,把开放题收敛成填空题,跑飞面最小</text>
<rect x="56" y="326" width="413" height="42" rx="8" fill="#ffffff" stroke="#2563eb" stroke-width="1.3"/>
<text x="66" y="346" class="t lbl">引擎:LittleJS 增强发行版(轻量档)</text>
<text x="66" y="362" class="xxs mut">引擎 + 能力插件库;按表现复杂度选,非分档轴</text>
<rect x="56" y="376" width="413" height="42" rx="8" fill="#ffffff" stroke="#2563eb" stroke-width="1.3"/>
<text x="66" y="396" class="t lbl">模型:便宜档(DeepSeek-v4 / MiniMax-M3)</text>
<text x="66" y="412" class="xxs mut">质量缺口靠模板约束 + 门兜底,不训专用大模型</text>
<rect x="56" y="426" width="413" height="48" rx="8" fill="#dcfce7" stroke="#16a34a" stroke-width="1.5"/>
<text x="66" y="446" class="t lbl">验收:九门 harness(真浏览器真玩 · 确定性地板)</text>
<text x="66" y="464" class="xxs mut">done 由确定性门定,不让 LLM 自评;不过则 repair → escalate → giveup</text>
<rect x="56" y="482" width="413" height="46" rx="8" fill="#a9dfbf" stroke="#16a34a" stroke-width="1.6"/>
<text x="66" y="502" class="t lbl">产物:A-model 写真 src/ 多文件源工程</text>
<text x="66" y="520" class="xxs mut">gameDefinition 已废、改源不改包;无 factory / cutover 双轨</text>
<rect x="56" y="538" width="413" height="42" rx="8" fill="#fff7ed" stroke="#d97706" stroke-width="1.4" stroke-dasharray="6 4"/>
<text x="66" y="558" class="xs t" font-weight="700">现状:骨架 + 控制流 + 九门已合入主干;</text>
<text x="66" y="574" class="xxs mut">生成质量尚未稳定到 80% 门(W-G1 攻坚),部分策略仍焊在机制层待外置。</text>
<text x="56" y="602" class="xxs mut">per-gen 预算硬闸:便宜档 &lt; ¥10 / 次(图、音另算)</text>
<!-- Tier1 档 -->
<rect x="517" y="218" width="445" height="404" rx="14" fill="#f0f9ff" stroke="#0284c7" stroke-width="2.4"/>
<text x="533" y="244" class="t h2">Tier1 · 中介入档(已落)</text>
<text x="533" y="263" class="xs mut">承载:中等复杂单局 —— 跑酷 / 弹球 / 多机制小游戏(AI 写更多逻辑)</text>
<rect x="533" y="276" width="413" height="42" rx="8" fill="#e0f2fe" stroke="#0284c7" stroke-width="1.5"/>
<text x="543" y="296" class="t lbl">AI 职责:在模板上写玩法逻辑 + 受控改码</text>
<text x="543" y="312" class="xxs mut">介入比 Tier0 深;数值进配置、只用模板已有行为</text>
<rect x="533" y="326" width="413" height="42" rx="8" fill="#ffffff" stroke="#0284c7" stroke-width="1.3"/>
<text x="543" y="346" class="t lbl">引擎:LittleJS 增强发行版(轻-中档)</text>
<text x="543" y="362" class="xxs mut">与 Tier0 同引擎,表现复杂度更高;非分档轴</text>
<rect x="533" y="376" width="413" height="42" rx="8" fill="#ffffff" stroke="#0284c7" stroke-width="1.3"/>
<text x="543" y="396" class="t lbl">模型:便宜档为主,救场位升强档</text>
<text x="543" y="412" class="xxs mut">11 角色映射模型;难门反复失败时 escalate 升档</text>
<rect x="533" y="426" width="413" height="48" rx="8" fill="#dcfce7" stroke="#16a34a" stroke-width="1.5"/>
<text x="543" y="446" class="t lbl">验收:同走九门 harness(共用确定性地板)</text>
<text x="543" y="464" class="xxs mut">与 Tier0 共用一套验收门;判定权不让步</text>
<rect x="533" y="482" width="413" height="46" rx="8" fill="#a9dfbf" stroke="#16a34a" stroke-width="1.6"/>
<text x="543" y="502" class="t lbl">产物:A-model 写真 src/ 多文件源工程</text>
<text x="543" y="520" class="xxs mut">与 Tier0 同范式(LLM 写真 src/),仅表现层更厚</text>
<rect x="533" y="538" width="413" height="42" rx="8" fill="#fff7ed" stroke="#d97706" stroke-width="1.4" stroke-dasharray="6 4"/>
<text x="543" y="558" class="xs t" font-weight="700">现状:与 Tier0 同条 A-model 主线,</text>
<text x="543" y="574" class="xxs mut">引擎 / 验收 / 产物完全共用,差别只在 AI 介入深度与表现复杂度。</text>
<text x="533" y="602" class="xxs mut">per-gen 预算硬闸:便宜档 &lt; ¥10 / 次(图、音另算)</text>
<!-- Tier2 档 -->
<rect x="994" y="218" width="446" height="404" rx="14" fill="#f0fdf4" stroke="#16a34a" stroke-width="2.4"/>
<text x="1010" y="244" class="t h2">Tier2 · 深介入档(核心已落)</text>
<text x="1010" y="263" class="xs mut">承载:富交互游戏 —— 经营 / 合成 / 多系统富游戏(AI 自治造)</text>
<rect x="1010" y="276" width="414" height="42" rx="8" fill="#dcfce7" stroke="#16a34a" stroke-width="1.5"/>
<text x="1020" y="296" class="t lbl">AI 职责:自治 ReAct agent 造多系统富交互</text>
<text x="1020" y="312" class="xxs mut">介入最深;同在 AgentScope 框架下,不另开第二套范式</text>
<rect x="1010" y="326" width="414" height="42" rx="8" fill="#ffffff" stroke="#16a34a" stroke-width="1.3"/>
<text x="1020" y="346" class="t lbl">引擎:Phaser(最富档 · 全无头可构建)</text>
<text x="1020" y="362" class="xxs mut">纯代码全无头,适配 agent 自治 loop;按复杂度选,非分档轴</text>
<rect x="1010" y="376" width="414" height="42" rx="8" fill="#ffffff" stroke="#16a34a" stroke-width="1.3"/>
<text x="1020" y="396" class="t lbl">模型:强档(M3 Anthropic 原生 · thinking 分离)</text>
<text x="1020" y="412" class="xxs mut">宽预算高质量低产量,小时级时延可接受</text>
<rect x="1010" y="426" width="414" height="48" rx="8" fill="#dcfce7" stroke="#16a34a" stroke-width="1.5"/>
<text x="1020" y="446" class="t lbl">验收:三层校验(确定性地板)+ 人工终审兜底</text>
<text x="1020" y="464" class="xxs mut">L1 必过 / L2 尽量 / L3 评分;产物仍汇入同一套验收基线</text>
<rect x="1010" y="482" width="414" height="46" rx="8" fill="#a9dfbf" stroke="#16a34a" stroke-width="1.6"/>
<text x="1020" y="502" class="t lbl">产物:Phaser 写真 src/ 多文件源工程</text>
<text x="1020" y="520" class="xxs mut">与 Tier0/1 同范式(LLM 写真 src/),仅引擎换 Phaser</text>
<rect x="1010" y="538" width="414" height="42" rx="8" fill="#ecfccb" stroke="#16a34a" stroke-width="1.5"/>
<text x="1020" y="558" class="xs t" font-weight="700">现状:0 号 spike feie-005 已 accept、核心已落;</text>
<text x="1020" y="574" class="xxs mut">验证走 n=5 收敛环(并发跑 5 / 有错追加 5 / 收敛即 go),产品化排期待定。</text>
<text x="1010" y="602" class="xxs mut">per-gen 预算硬闸:复杂档 &lt; ¥50 / 次(图、音另算)</text>
<!-- 公共件交汇带(三档唯一交汇面)-->
<rect x="40" y="640" width="1180" height="96" rx="12" fill="#e2e8f0" stroke="#0f172a" stroke-width="2.2"/>
<text x="56" y="664" class="t h2">三档唯一交汇面 = 公共件(双线边界 · 运行期零耦合,只在此汇合)</text>
<rect x="56" y="676" width="270" height="48" rx="7" fill="#fff" stroke="#0f172a" stroke-width="1.4"/>
<text x="66" y="696" class="xs t">计费平面(new-api 配额)</text>
<text x="66" y="714" class="xxs mut">单 key 入台账,成本可对账</text>
<rect x="338" y="676" width="270" height="48" rx="7" fill="#fff" stroke="#0f172a" stroke-width="1.4"/>
<text x="348" y="696" class="xs t">送审 + feed(合规门 / 信息流)</text>
<text x="348" y="714" class="xxs mut">三档产物都走同一条上线发行</text>
<rect x="620" y="676" width="270" height="48" rx="7" fill="#fff" stroke="#0f172a" stroke-width="1.4"/>
<text x="630" y="696" class="xs t">验收基线(确定性门)+ 执行沙箱</text>
<text x="630" y="714" class="xxs mut">都跑同一套 iframe 沙箱与门</text>
<rect x="902" y="676" width="300" height="48" rx="7" fill="#fff" stroke="#0f172a" stroke-width="1.4"/>
<text x="912" y="696" class="xs t">控制 / 管理面治理层(三档共用)</text>
<text x="912" y="714" class="xxs mut">配置注册表 + 观测审计仓 + D12 治理门</text>
<!-- 三档指向公共件 -->
<line x1="240" y1="622" x2="240" y2="638" class="flow" marker-end="url(#arrow)"/>
<line x1="740" y1="622" x2="740" y2="638" class="flow" marker-end="url(#arrow)"/>
<line x1="1100" y1="622" x2="1100" y2="638" class="flow" marker-end="url(#arrow)"/>
<!-- 远期可插拔适配 + 深度链接 -->
<rect x="1238" y="640" width="202" height="96" rx="12" fill="#faf5ff" stroke="#7c3aed" stroke-width="1.6" stroke-dasharray="6 4"/>
<text x="1252" y="662" class="t h2" fill="#6b21a8">远期可插拔适配</text>
<text x="1252" y="684" class="xxs mut">SAA / dify / coze 降最低优先级,</text>
<text x="1252" y="700" class="xxs mut">留作「验证框架可插拔」目标:</text>
<text x="1252" y="716" class="xxs mut">各接一个 adapter 适配进来,</text>
<text x="1252" y="732" class="fut">非现行主轴 · 远期不投核心</text>
<!-- 图例 + 映射脚注 -->
<text x="40" y="790" class="t h2">图例:</text>
<rect x="120" y="776" width="34" height="20" rx="5" fill="#eff6ff" stroke="#2563eb" stroke-width="1.8"/><text x="162" y="791" class="t xs">现行已建(三档 · 各档浅深不同)</text>
<rect x="420" y="776" width="34" height="20" rx="5" fill="#faf5ff" stroke="#7c3aed" stroke-width="1.8" stroke-dasharray="6 4"/><text x="462" y="791" class="t xs">远期可插拔适配(SAA / dify / coze)</text>
<rect x="760" y="776" width="34" height="20" rx="5" fill="#e2e8f0" stroke="#0f172a" stroke-width="2"/><text x="802" y="791" class="t xs">公共件(三档唯一交汇)</text>
<g class="badge"><rect x="1030" y="777" width="56" height="18" rx="3" fill="#15803d"/><text x="1035" y="790" fill="#fff">质量</text>
<rect x="1094" y="777" width="56" height="18" rx="3" fill="#16a34a"/><text x="1099" y="790" fill="#fff">成本</text></g>
<text x="40" y="824" class="mut xs">读这张图抓三点:① 分档轴只有「AI 参与深度」一条,引擎(LittleJS / Phaser)只是按复杂度选的实现变体;② 三档共用一套 AgentScope 框架与同一套九门 / 验收基线,Tier2 核心已落、验证走 n=5 收敛环;③ 三档运行期零耦合,只在公共件汇合。生成引擎运行时单一真相见子树运行时 SoT。</text>
<text x="40" y="900" class="mut xs">映射architecture/架构/生成引擎/README §1·§4 + 运行时 SoT agentic运行时架构图说.md §一·§四 状态:现 + 建(三档全已落,Tier2 产品化排期待定;SAA / dify / coze 远期可插拔适配) 设计变动须同步本图</text>
</svg>