chore:文档补全

This commit is contained in:
Evilom
2026-06-23 14:43:31 +08:00
parent a57554bbfa
commit 9f190e0315
377 changed files with 38889 additions and 8 deletions
@@ -0,0 +1,140 @@
# VQxswUOvaiUx36kPiq6cNBERnLg
Source: https://dianchukeji.feishu.cn/wiki/VQxswUOvaiUx36kPiq6cNBERnLg
# 一.工作内容概述
- 继续探索 UI 生图工作流,重点补充 Responses API / Image API 相关认知,并测试中转站 Responses API 接入效果;尝试 asset sheet 合批生成策略,验证其对多元素 UI 资源交付效率提升程度。
- 修复项目在抖音开发者工具环境下暴露出的拼图海报渲染、飞行动画和广告刷新相关问题。
# 二.UI生图工作流探索
## Responses API 认知补充
### 昨日判断的修正
昨日在分析 Codex 与 ClaudeCode 的生图交付质量差异时,曾倾向认为 Codex 之所以能够更好地完成“从效果图中拆分元素”,可能是因为 Codex 内部可以直接调用 Responses API 图像工具链。
今天进一步探索了解后发现,这个判断需要修正。
更准确的理解是:
- OpenAI 图像生成能力可以通过 Image API 或 Responses API 使用;
- Responses API 的图像工具可以在上下文中接收文本和图片输入,并通过 image_generation tool 生成或编辑图片;
- 但 Codex 内置 imagegen 并不等同于直接调用 /v1/responses;
- 如果要让 Codex 在工程脚本中调用 Responses API,仍然需要可用的 API Key、baseURL,以及对应的 /v1/responses 接口能力。
因此,昨日关于“Codex 可能直接调用 Responses API”的判断并不准确。今天先补齐了这部分认知,将几类能力重新区分清楚
### Image API 与 Responses API 的区别
梳理了 Image API 和 Responses API 的区别:
- Image API 更适合直接的图片生成或编辑任务,通常是:输入 prompt->生成图片->返回图片结果
- 而 Responses API 更适合对话式、多步骤、多模态上下文中的图像任务。它更强调上下文理解、工具调用和多轮交互。
这也解释了为什么昨天观察到:
- Codex / 网页 GPT 类链路更像是先对任务进行理解和转译,再执行图像生成或编辑;而 ClaudeCode 直接调用 image2 时,如果缺少中间任务拆解,更容易退化为“参考图重绘”。
- 同样的提示词,在不同调用链路中可能被解释成不同任务。
所以问题不只是“使用哪个图像模型”,还包括:
- 是否有上下文理解
- 是否有 prompt revision
- 是否能区分 generate / edit
- 是否有 agent 参与任务转译
- 是否能将需求拆成多步执行
## 中转站 Responses API 接入测试
### 测试目的
在确认 Codex 原生 imagegen 不能直接等同于 Responses API 后,今天尝试通过中转站接入 Responses API。
测试目标是验证:
- 是否能在 Codex Skill 中通过中转站使用 Responses API;
- 是否能获得类似网页版 GPT / Responses API 的多步骤图像处理效果;
- 是否能提高 UI-Asset-Forge Skill 的交付速度;
- 是否值得将中转站 Responses API 作为后续正式生图 provider。
### 测试结果
测试后发现,中转站 Responses API 在实际 Skill 流程中的优势并不明显,整体交付速度与 Codex 原生 imagegen 几乎持平。
主要表现为:
- 接入链路变长,需要额外维护 API Key、baseURL、请求格式和返回解析;
- 网络通信耗时增加;
- 中转站稳定性会直接影响生成速度;
- 接口兼容情况不完全可控;
因此,虽然中转站 Responses API 理论上可以作为一种 provider 接入,但它没有显著提升当前 Skill 的实际交付效率。
### 对比结论
**对比项**
**中转站 Responses API**
**Codex 原生 imagegen**
接入成本
较高,需要配置和适配接口
较低,直接使用 Codex 原生能力
稳定性
受中转站影响
相对更直接
交付速度
与原生 imagegen 几乎持平
与中转方案接近
多图输出
内部处理
需流程规划
维护成本
较高
较低
当前优化价值
不明显
更适合作为主流程基础
最终结论是:**中转站 Responses API 不是当前 UI-Asset-Forge Skill 提效的关键方向**
## Asset Sheet 合批生成策略尝试
在确认“更换生图接口”不是主要优化方向后,今天开始将优化重点转向 Codex 原生能力下的生图策略设计,重点尝试 asset sheet 合批生成。
### 优化思路
之前的流程更偏向逐元素生成或逐元素拆分,虽然结果相对可控,但整体效率不够高。尤其是在一个界面包含二十多个元素时,如果每个元素都单独生成、单独处理,会导致整体交付时间明显拉长。
因此今天尝试将部分资源按照类型、尺寸和功能进行合批:
- 小图标类资源合批生成;
- 装饰件类资源合批生成;
- 尺寸接近、风格相近的元素放入同一张 asset sheet;
- 主结构件、背景板、关键按钮等仍然保留单独生成;
- 文字类或对细节还原要求较高的资源尽量单独处理。
这样可以减少生图次数,也能减少 agent 在多个相似资源之间重复规划和调用的成本。
### 初步测试效果
在初步测试中,一个包含二十多个元素的界面资源任务,整体交付时间已经可以控制在约 10 分钟左右。
这说明,相比继续追求更复杂的生图接口,直接优化 Codex 原生能力下的生成批次和资源组织方式,反而更能带来实际提效。
### 当前仍存在的问题
虽然 asset sheet 合批生成已经能提升效率,但目前仍然存在一些待优化点:
- asset sheet 中的元素仍需要后续切分;
- 如果切分依赖 agent 主观判断,仍然会增加执行负担;
- 元素之间的间距、边界、透明背景处理还需要更稳定的规则;
- 部分元素可能会在合批生成时出现比例偏差或细节漂移;
- 失败项需要从合批结果中识别出来,再单独补生成。
因此,asset sheet 合批本身只能解决“减少生成次数”的问题。后续还需要配合本地切图脚本,才能进一步压缩整体交付时间。
## 4. 后续 Skill 优化方向
### 继续使用 Codex 原生 imagegen 作为主要生图入口
由于中转站 Responses API 没有明显速度优势,且会增加额外不稳定因素,后续暂时不再将其作为核心优化方向。后续主流程仍以 Codex 原生 imagegen 为基础,重点优化:
- 如何减少请求次数;
- 如何提高批量素材生成效率;
- 如何减少 agent 反复处理单个资源;
- 如何把确定性处理交给脚本完成。
### 完善 asset sheet 合批生成策略
今天已经验证 asset sheet 合批生成具备提效价值,后续需要进一步规范合批规则。进一步形成固定的 manifest 结构,让 agent 先输出资源清单和合批计划,再由 Codex 按计划生成 asset sheet。
### 将切图交给本地脚本完成
后续需要把“切图”从 agent 的主观执行中拆出来,改为本地脚本处理。
本地脚本主要负责:
- 从 asset sheet 中识别素材区域;
- 自动裁切单个资源;
- 添加 padding;
- 去除背景;
- 输出透明 PNG;
- 按 manifest 命名;
- 检查尺寸、透明通道和边缘留白;
- 输出失败项列表,交给 agent 决定是否补生成。
当前二十多个元素的界面资源已经可以控制在 10 分钟左右交付。后续如果引入本地切图脚本,并减少不必要的中间步骤,时间可以进一步压缩。
# 三.抖音开发者平台适配问题
## 遇到的问题汇总
昨日在将项目构建并导入抖音开发者工具后,已经发现抖音小游戏环境和 Cocos 本地环境存在差异,主要体现在运行环境、代码依赖关系、关卡生成性能等方面。在对上述问题进行初步修复和验证后,又发现拼图海报界面在抖音环境下存在渲染和动画异常,因此今天重点对该模块进行了排查和修复。
### 拼图海报图片显示异常
在抖音小游戏环境中,拼图碎片形状可以正常显示,但海报图片纹理无法正常加载。
排查后确认,该问题主要来自抖音小游戏的 **GPU-only 纹理机制**。图片上传到 GPU 后,CPU 侧图片数据可能被释放,导致原先在 Web / 微信环境中可用的图片读取方式,在抖音环境中无法稳定使用。
已针对抖音平台补充新的图片加载兼容方案,通过多级加载和兜底处理,保证海报图片能够被正常读取并绘制到碎片上。
### 广告奖励后飞行碎片尺寸异常
玩家看完广告获得拼图碎片后,飞向海报区域的碎片尺寸明显偏大,和最终落到海报中的碎片大小不一致。
该问题主要是由于抖音环境下无法继续使用原有的部分渲染方式,需要走 **Canvas2D 降级渲染路径**。在这个过程中,静态碎片和飞行碎片对缩放比例的处理不一致,导致 pixelScale 被重复计算,从而造成动画碎片尺寸异常。
已重新调整飞行碎片的渲染尺寸和动画缩放逻辑,使飞行动画中的碎片大小与最终海报碎片保持一致。后续需持续关注清晰度和动画表现。
### 广告奖励后海报碎片闪烁
玩家看完广告后,面板中的海报碎片会出现短暂闪烁的情况。
排查后确认,问题原因是广告奖励回调触发了海报区域的整体重建。由于图片加载存在异步过程,重建期间会短暂进入默认显示状态,从而产生闪烁。
已将广告奖励后的刷新方式从"整体重建"调整为"原地更新":
- 不再销毁并重建整个海报区域;
- 只更新新增碎片的收集状态;
- 图片加载期间避免回退到纯色块显示;
- 资源更新完成后直接替换对应碎片显示。
调整后,广告奖励回调不再触发整块海报区域重建,界面刷新过程更加稳定。
## 2.思考与复盘
从这两天的问题来看,Cocos 本地环境和抖音小游戏环境之间存在明显差异。本地预览正常,并不代表在抖音开发者工具或真机环境中也能稳定运行。尤其是图片资源、Canvas 渲染、组件注册、代码依赖、性能消耗等环节,都可能因为平台环境不同而暴露出新的问题。
本次拼图海报问题的排查也暴露出一个问题:前期对抖音平台底层能力的了解还不够充分,导致最开始排查时更多是基于 Cocos 本地经验进行判断,花费了一定试错成本。后续遇到类似平台适配问题时,应优先确认官方文档和平台能力边界,再决定具体实现方案。
整体来看,今天的修复不仅解决了拼图海报模块的显示问题,也进一步明确了后续抖音平台适配的工作方式:
**以抖音开发者工具和真机结果为准,以官方文档为依据,逐步梳理平台差异,并针对高风险模块提前做兼容和降级处理。**
已安装了Context7插件,让 ClaudeCode 在处理平台适配问题前优先查询官方文档,减少因平台能力判断不清导致的试错成本。