Image to 3D Hero (one picture to a playable rigged GLB, free open-source route, three.js WASD)
/image-to-3d-hero
A GameSkill original that takes one character image to a third-person hero you can walk with WASD, using free tools only: TripoSR or TRELLIS.2 for the mesh, UniRig or Blender for the rig, Quaternius CC0 clips, then a headless Blender fix step and a GLB check for scale, feet, facing and clip names. Meshy, Tripo and Mixamo are listed as alternatives only. Tested on Bram, a made-up stand-in hero.
- 许可证
- MIT
- 出品
- GameSkill 出品
我们测过
在 three.js 0.187 in Chrome headless + Blender 5.2 headless + Node (GLB inspector) 上通过 25/25 项检查(2026-11-03):能触发、有可运行示例、有截图和自检清单、单一职责、中英文文档齐全。触发检查是把提示词和 skill 描述做匹配,不是真实 agent 运行。
测试报告GameSkill 测过的版本
GameSkill 为 gameskill.dev 原创编写并测过。ZIP 里是完整的 skill:SKILL.md 及中文版、脚本、可运行示例、测试、自检清单和我们的测试报告。
GameSkill 原创,协议 MIT。ZIP 保留 LICENSE 和 CREDITS.md,里面列出了流程灵感来源、CC0 测试素材和第三方库及其协议。

自检清单
- 朝向 +Z,按 W 远离镜头 / Faces +Z, W walks away from the camera
- 身高 1.6-2.0 米,脚在 y=0 / 1.6-2.0 m tall, feet on y=0
- 五个动画角色都有对应 / All five clip roles mapped
- inspect-glb 没有 FAIL / inspect-glb has no FAIL lines
- 记下模型、权重和动画包的许可证 / Licences of models, weights and clips written down
- 浏览器文件里没有 API 密钥 / No API key in browser files
中文指南
这个 skill 做什么
只用免费开源工具,把一张角色图变成能用 WASD 操作的第三人称 3D 主角:TripoSR 或 TRELLIS.2 生成模型,UniRig 或 Blender 绑定,Quaternius 的 CC0 动画,再用无头 Blender 修正朝向、大小、落地和动画名,并用 GLB 检查器验收。Meshy、Tripo、Mixamo 只作为付费替代列出。
什么时候用
- 有一张角色图,想让它在 3D 游戏里走起来
- AI 生成的 GLB 太大、背对镜头、浮空,或者动画名游戏找不到
- 想找付费图片转 3D 和自动绑定服务的免费替代
怎么装
下载本页 ZIP,把 image-to-3d-hero/ 放进 agent 的 skills 文件夹:Claude Code 用 .claude/skills/,Codex、Gemini CLI、OpenCode 用 .agents/skills/,Cursor 用 .cursor/skills/,Copilot 用 .github/skills/,Windsurf 用 .windsurf/skills/。也可以直接对 agent 说:Install the skill from https://gameskill.dev/skills/image-to-3d-hero/install.md
最小示例
原创的低多边形小人 Bram,代替生成和绑定步骤的产出,故意带上常见问题(厘米单位、背对镜头、原点在腰部、工具风格的动画名)。Blender 脚本把它转 180 度、缩到 1.8 米、脚放到地面、动画改名为待机/走/跑/跳/动作;three.js 示例里用 WASD 走、Shift 跑、空格跳、E 挥手。
我们怎么测的
共 12 项:常见工具导出的动画名能识别成五个角色;检查器在原始文件上找出单位、原点和朝向三个问题,在修好的文件上 PASS;Blender 重新生成原始文件结果一致,修正脚本输出和仓库里的文件一致,对已修好的文件不再改动;代码里没有付费 API 调用和密钥;无头 Chrome 里用真实按键走、跑(速度约为走的 2.5 倍)、转向、跳起落地、挥手,原始文件加载时也被修正并在 HUD 里标出。结果在 gameskill/test-report.json。
和原帖的区别
原帖的流程用的是付费工具。这里只用 MIT 和 CC0 的免费工具(代码和模型权重的许可证都核对过),付费工具只列为替代;另外加上了 GLB 验收、Blender 自动修正和可运行的 three.js 示例。
搭配
glb-godot-acceptance:把 GLB 导进 Godot 时验收blender-game-optimization:模型太重时先减面
安装
告诉你的 AI
Install the skill from https://gameskill.dev/skills/image-to-3d-hero/install.md
GameSkill 测过的版本
mkdir -p .claude/skills
curl -fsSL https://gameskill.dev/dl/skills/image-to-3d-hero.zip -o /tmp/gameskill-image-to-3d-hero.zip
unzip -oq /tmp/gameskill-image-to-3d-hero.zip -d .claude/skills
rm /tmp/gameskill-image-to-3d-hero.zip包含内容
- A free route with checked licences for code and model weights, plus paid tools as alternatives only
- tools/inspect-glb.mjs: scale, feet, facing from the hand bones, clip roles, size; FAIL and WARN lines
- tools/fix-hero.py: headless Blender fix for facing, scale, ground, centre and clip names
- example/web: three.js third-person WASD with walk, run, jump and action, fixing raw files at load
适合
- A character picture that should become a playable 3D hero
- AI-generated GLBs that are huge, backwards, floating or have unknown clip names
- A free alternative to paid image-to-3D and auto-rig services
不适合
- Hand-modelling or sculpting quality characters
- Facial animation and lip sync
试试这条提示词
Here is a drawing of my courier character. Make it a 3D hero I can walk with WASD in the browser, with free tools only, and check the GLB before we use it.关于这个 Skill
Image to 3D Hero is a GameSkill original for getting a character from one picture into a game with free tools only. The agent walks the user through a front A-pose sheet, a local image-to-3D model (TripoSR on a CPU, or TRELLIS.2 on a big GPU), a rig (UniRig, or Blender's automatic weights), and five clips from the CC0 Quaternius Universal Animation Library. Code and model weights were both MIT when we checked.
Most of the pain is in the hand-off, so the skill checks it. inspect-glb.mjs reads the GLB with no packages and reports height, where the feet are, which way the hero faces (from its left-hand and hips bones) and which clip plays each role. fix-hero.py fixes all of that in headless Blender. The three.js example then plays the hero with WASD, Shift, Space and E, and fixes a raw file at load while showing what it fixed.
The step order comes from a public post by @bonsaixbt that used paid services; here Meshy, Tripo and Mixamo appear only as alternatives.
Related
- glb-godot-acceptance for the Godot import.
- blender-game-optimization to decimate a heavy mesh first.
- ai-mesh-weapon-rig for weapons and props from AI meshes.
环境要求
- Node 18+ (tools/inspect-glb.mjs uses built-ins only)
- Blender 4.2+ for tools/fix-hero.py
- For the mesh and rig steps: TripoSR (CPU works) or TRELLIS.2 and UniRig (NVIDIA GPU)
- For the example: npm ci (three, puppeteer-core) and Chrome or Chromium
相关主题
常见问题
基于 Image to playable 3D hero pipeline (idea only) (作者 @bonsaixbt,public post, step order only; no text, prompts or images used)的思路。代码和文字由 GameSkill 编写,ZIP 里的 CREDITS.md 列出所有来源。
搭配使用
作者标注的相关 Skills,或更适合相邻任务的 Skills。
GLB to Godot Acceptance (is this model really done?)
A GameSkill original that decides whether a 3D model is ready for a game: Godot 4 imports the GLB like any file in the project, then checks import errors, triangle budget, size in metres with Y up, origin at the base, materials, colliders, the clips the code plays, a drop test on a floor and runtime errors, with a fix for every failure. Works on any GLB from Blender or an image-to-3D model.
Blender Game Optimization
Optimize Blender assets for real-time engines: per-platform budgets, LOD chains, decimation, draw-call reduction and texture memory.
AI Mesh Weapon Rig (split, rig, fire/reload, FPS viewmodel)
A GameSkill original that turns one fictional prop mesh into a first-person viewmodel GLB. It splits the mesh by material or baked texture colour from a small parts spec, rigs rigid parts on root, slide, trigger and mag bones with muzzle, eject, mag and grip sockets, bakes fire, reload and inspect clips, measures the mechanism and checks the GLB. A three.js FPS viewer plays the clips and puts the muzzle flash on the socket. Prototype quality: generated meshes still need cleanup.
相似 skills
3AGameFactory (GameFactory-3A)
An Apache-2.0 framework of agent skills and pipelines that turns a game requirement into assets (image, 3D, motion, audio, CG video) and engine-ready code for UE5, Blender, Unity, Godot 4 and three.js.
Construct
Describe a prop as data (parts in metres, joints, assembly order) and a deterministic engine builds it: an animated hologram page, and a glTF model with named parts, working joints and optional colliders for Godot, Unity, Unreal or Blender. Python standard library only.
Hermes GameForge
A game-development plugin for Hermes Agent with 10 agent skills and 9 tools: SFX, music, NPC voices, pixel sprites, tilesets, low-poly 3D, web/Godot/Unity builds, a playtester that plays the build, and itch.io export. Runs offline by default.
Style Cards (one art style as hard limits, switch looks by switching cards)
A GameSkill original that writes a game's art style down as a card of measurable limits (canvas, colours and palette, alpha, triangles, shading, materials, textures, voxel grid), pastes it into every asset request and checks every asset against it. Ships 12 cards from pixel and one-bit to low-poly, voxel and toon, a no-dependency PNG checker, a Blender GLB checker and a palette locker; switch the whole look by switching the card.