mcpField
A
asset-gen

asset-gen

github.com/htdt创意与媒体7.2k67 次安装2 周前更新
代码仓库

关于 asset-gen

使用 godogen_assets 本地 GPU 工具生成游戏素材的工作流技能,涵盖图像、3D、绑定、动作、语音和音效,并指导检查结果及记录素材。

主要功能

  1. 01文本生成图像及图像编辑
  2. 02从图像生成带纹理的 GLB
  3. 03人形绑定与动作生成
  4. 04语音台词与口型同步片段
  5. 05音效与环境循环音频
  6. 06素材检查与清单记录指引

适用场景

  1. 01从概念图制作角色并生成动画
  2. 02生成道具并设置为角色可持有
  3. 03制作游戏语音台词和音效

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/htdt/godogen --skill asset-gen

安装后在 Claude Code 中输入/asset-gen确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

api.md
motion.md
rembg.md
tools/
asset_gen.py
find_loop_frame.py
grid_slice.py
loop_audio.py
rembg_matting.py
requirements.txt

详细介绍

资产生成器

资产来自 godogen_assets:在本机 GPU 上运行的本地生成器,每项任务只需一条命令,而且免费。此处的代码库检出路径为 ${GODOGEN_ASSETS},其中的文档是参考资料;本页是简要说明,以及游戏所需的额外内容。请先阅读一次 ${GODOGEN_ASSETS}/README.md(了解约定、角色从头到尾的制作流程,以及检查结果的方法),首次使用某个部分的工具前,先阅读该部分 README 中 How it works 之前的内容。

命令生成内容代码库检出目录中的 README
qwen-image从文本生成 PNG;rgba:真实透明背景;edit -i ref.png:图生图image/
gen3d从图像生成带纹理的 GLBmesh/
mia-rig从 GLB 生成 Mixamo 绑定的人形角色rig/
add-moves、gen-moves为绑定添加 idle/walk/run/jump;根据文本提示词生成自定义动作motion/
grip-prop将道具处理为可手持;add-moves --hold 可将其放到角色手中motion/
lipsync根据语音台词生成说话口型和口型同步片段lipsync/
stable-audio音效、无缝环境音循环sfx/
qwen-tts根据描述生成语音台词,或根据参考台词克隆语音voice/

角色制作流程:qwen-image rgba(T 字姿势)→ gen3d → mia-rig --fingers --anim none → add-moves;自定义动作使用 gen-moves,语音使用 lipsync。道具在 gen3d 后即可完成;角色手持的道具则要继续使用 grip-prop 和 add-moves --hold,绝不要在引擎中调整偏移量来实现。

  • 始终使用 -o 将结果输出到项目中;否则结果会写入 godogen_assets 代码库检出目录。
  • 一次只运行一个 GPU 任务,每次调用需要几分钟。 将 GPU 工具作为一个长超时的顺序批次运行,或在后台运行,绝不要并行调用。
  • 游戏预算。 gen3d 默认生成约 500k 个三角形和 2048² 纹理;请传入 --faces / --tex(角色使用 30000 / 1024)。
  • 风格系列。 先生成一个主资产,再使用 qwen-image edit -i hero.png 衍生其余资产,只提示需要改变的内容。
  • 小型精灵图。 将 1024px 图像缩小到 64px 会显得模糊:将设计尺寸设为 ≥128px、提示生成粗犷的扁平造型,或者生成一套素材(在一张图中放入多个物件),再使用 python3 ${ASSET_GEN_SKILL_DIR}/tools/grid_slice.py kit.png -o out/ --grid 2x2 --names "a,b,c,d" 切分。
  • 朝向。 生成器经常弄错左右和朝向;先生成一个方向,再在运行时翻转。
  • 音频格式。 每种工具根据 -o 的扩展名选择格式。Bevy 的默认特性仅解码 Ogg Vorbis,因此在 Bevy 中请写入 .ogg 文件。
  • 基于资产继续制作前先检查。 查看每张 PNG。无法直接查看 GLB,也无法直接听 WAV:渲染 GLB(参阅 ${GODOGEN_ASSETS}/README.md 中的 Checking results),并将音频以频谱图形式查看(参阅 ${GODOGEN_ASSETS}/sfx/README.md)。

驱动游戏玩法的动作——根运动移动、攻击、状态机、任何手持、骑乘或瞄准相关内容,以及彼此接触的角色:请阅读 ${ASSET_GEN_SKILL_DIR}/motion.md。

Blender

有些 3D 内容手工构建比生成更合适。通过无头模式运行 bpy 脚本(blender -b -P make_turret.py,使用 bpy.ops.export_scene.gltf 导出)通常是更好的做法,适用于以下情况:

  • 形状必须精确或可活动:车轮会转动的车辆、带铰链的门、可以瞄准的炮塔、能够拼接在一起的套件部件;
  • 生成的 GLB 需要进一步处理:拆分为多个部件、设置新枢轴、简化网格,或合并多个模型;
  • 动画超出人形工具的能力范围:机械部件、由少量骨骼组成的生物、关键帧或程序化片段。

像检查其他 GLB 一样检查生成结果。如果 PATH 中没有 blender,运行 asset-blender script.py -- args 会使用 godogen_assets 中的 Blender 运行脚本(脚本的 print 输出到 stderr)。

付费 API

${ASSET_GEN_SKILL_DIR}/api.md 涵盖 Gemini / xAI Grok 图像、Grok 视频生成的动画精灵、Tripo 3D、Gemini TTS 和 Lyria 音乐。只有在需要使用以下某项生成资源时才阅读:

  • 这台机器上没有 godogen_assets(上方的检出结果显示为 none),或某条命令提示 not installed——这部分尚未配置;
  • 本地工具无法生成所需内容:逐帧动画 2D 精灵、音乐、一个角色演绎多种情绪的配音、短促语音、双人对话、qwen-tts 不支持的语言,或非人形角色的骨架;
  • 改写提示词并尝试几个种子后,本地生成的结果仍然不对。

付费调用会产生实际费用:首次调用前请先征得用户同意。

资源清单(在 README.md 中)

在 README.md 中用 游戏内尺寸 列记录每项生成的资源——没有这一列,编码人员总是会把资源缩放错。gen3d 生成的模型高度为 1.0,且没有实际比例,因此由这一列决定它们的尺寸:

  • 3D 模型:以米为单位,例如 4m long、1.8m tall、0.3m
  • 纹理:平铺尺寸,例如 2m tile
  • 背景:像素尺寸 + 显示方式,例如 1920x1080, fullscreen
  • 精灵:显示像素,例如 128x128 px
  • 音频:时长 + 用途,例如 1.2 s one-shot、8 bars / 22.6 s loop
名称描述尺寸路径费用
crate木制补给箱0.8m${RUNTIME_ASSET_DIR}/glb/crate.glb本地
theme村庄商店音乐8 bars / 22.6 s loop${RUNTIME_ASSET_DIR}/audio/shop_loop.ogg4¢

评论

支持 Markdown