Skip to Content
资产与配置资产工作坊

资产工作坊

用途

资产工作坊是「主体聚合层」编辑视图,从主「资产中心」的媒体文件层抽离出来,专门完成 主体级 的”配置 + AI 设计 + 生成图”流程。一个主体(subject)即一个跨集复用的角色 / 场景 / 道具 / 音色,下方聚合它的画风、描述、参考图与历史版本;资产中心负责展示其衍生的 IMAGE / VIDEO / AUDIO / DOCUMENT 媒体文件,工作坊负责聚合二者上游的 subject。

使用前准备

  • 已登录工作区账号,且至少有 1 个画风模型可用(用于 AI 设计 / 生成图像)。
  • 全局主体库(subject)至少存在 1 条记录:可以从工作坊顶部「新建角色 / 新建场景」创建,或在项目生产阶段由系统初始化生成。
  • 进入前先确认当前操作的主体类型(角色 / 场景 / 道具 / 音色),避免在错误 tab 内做错配。

配图占位

  • 页面:资产工作坊
  • 状态:左 320px 列表 + 右 flex-1 详情面板,顶部 4 个 tab(角色 / 场景 / 道具 / 音色)
  • 重点区域:tab 切换、列表搜索、主体头部 167×167 缩略图、操作按钮组、AI 设计主 CTA
  • 脱敏要求:隐藏人物真实信息、未授权媒体、音频样本、项目名和账号信息

操作步骤

  1. 进入工作坊:从顶部导航的「资产中心」旁切换到「资产工作坊」tab,或直接访问 /workspace/asset-workshop。面包屑会显示 工作区 / 资产工作坊
  2. 切换主体类型:顶部 4 个 tab 分别为 角色 / 场景 / 道具 / 音色。当前版本只启用「角色」与「场景」,道具与音色为 Phase 10 占位,列表会显示「暂无数据,点击『新建』开始」。
  3. 在左侧列表定位主体:左 320px Finder 风格列表,自带搜索框(按名称模糊匹配)与滚动区;单击一行即在右侧载入详情。
  4. 查看 / 编辑右侧详情面板:右 flex-1 面板自上而下包含三块:
    • 主体头部:167×167 缩略图 + 名称(默认展示 subjectId 前 8 位)+ 类型 chip(如 CHARACTER / LOCATION),右侧三按钮 ✦ AI 设计 / 编辑 / 删除。描述区提示「点击 AI 设计让 AI 生成描述,或『编辑』手动输入」。
    • 图像操作:2×4 grid 的 4 个占位按钮 生成图像 / 修改 / 选中 / 撤回,后端 hook(useGenerateCharacterImage / useModifyCharacterImage / useSelectCharacterImage / useUndoCharacterImage)已就绪,待 Phase 7 接入。
    • 上传区:左右两个 dashed 拖放区,左「上传图片(JPG / PNG)」右「上传音色(MP3 / WAV)」。
  5. 新建主体:点击左侧顶部 新建角色 / 新建场景 按钮(按钮文案随当前 tab 切换),触发 CreateSubjectModal,按表单提交即可;创建成功后在列表中可见(当前版本不自动选中)。
  6. 删除主体:点击头部 删除 按钮触发 useDeleteCharacter mutation;删除前会先解除项目级引用,避免孤立引用阻塞生成。

结果与状态

  • 选中主体后,操作会生成图片任务并在 task overlay 中显示进度;历史版本以追加方式记录,不会覆盖既有版本(保留版本切换能力)。
  • AI 设计 / 生成图像成功后会更新主体的画风、描述或参考图,下游项目引用同步可见。
  • 删除会先解除项目引用再落库;解除失败时主体不会被删除,避免产生孤儿主体。
  • tab 切换会清空当前选中并重新触发对应 query,列表加载期间保留旧数据(staleTime: 5000)。

权限和限制

  • 道具 / 音色 tab 为 Phase 10 占位:UI 已渲染入口,但列表与详情面板暂未接入 subject 数据。
  • 4 个图像操作按钮(生成图像 / 修改 / 选中 / 撤回)为 占位 UI:后端 hook 已就绪,待 Phase 7 接入 mutation。
  • 删除不可前向回滚:执行 useDeleteCharacter 后无 undo 入口;如需保留历史,请在删除前先备份主体或迁移到项目内复用。
  • 单次操作仅作用于当前选中 subject,跨主体批量动作未启用。

常见问题

为什么「生成图像 / 修改 / 选中 / 撤回」按钮点了没反应?

当前为占位 UI,对应的 React Query mutation(useGenerateCharacterImage / useModifyCharacterImage / useSelectCharacterImage / useUndoCharacterImage)已在 lib/query/hooks 就绪。Phase 7 接入后会调用对应后端 endpoint,生成的任务会出现在 task overlay 并以追加方式写入历史版本。

道具 / 音色 tab 为什么是空的?

道具与音色 tab 是 Phase 10 预留入口。当前版本仅完成 character / location 两条数据流的接入;切换到「道具」或「音色」时会显示「暂无数据,点击『新建』开始」。Phase 10 完成后,列表与详情面板会与角色 / 场景一致。

「上传图片 / 上传音色」可以拖放吗?

可以,两个上传区都是 dashed 边框 + 拖放命中区域,支持 JPG / PNG(图片)与 MP3 / WAV(音色)。上传后会自动追加到当前主体的历史版本,并通过 apiFetch/api/assets/creative/[id] PATCH 接口更新 selectedVersionId。

/workspace/asset-hub 有什么区别?

asset-hub(资产中心)是 媒体文件层,以 kind=IMAGE / VIDEO / AUDIO / DOCUMENT 维度组织条目,定位是「跨集可复用素材的总目录」;asset-workshop(资产工作坊)是 主体聚合层,以 subject=character / location / prop / voice 维度组织,定位是「围绕一个主体的配置 + 设计 + 历史版本操作视图」。两者通过 subjectId ↔ subject 字段互相关联,工作坊是上游、资产中心是下游。

相关文档

Last updated on