Construct
/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.
- 许可证
- Apache-2.0
- 出品
- GameSkill 出品
我们测过
在 Construct scripts/cli.py on Python 3 + Godot 4.7.2 (glTF import and physics) 上通过 33/33 项检查(2026-11-03):能触发、有可运行示例、有截图和自检清单、单一职责、中英文文档齐全。触发检查是把提示词和 skill 描述做匹配,不是真实 agent 运行。
测试报告这个 skill 做什么
什么时候触发
Turn a description into a hologram and a 3D model.
GameSkill 测过的版本
GameSkill 调优版:skill 文件取自提交 3e3556317cca,按我们的 skill 流程加上可运行示例、测试报告、自检清单和中文指南。
协议:基于 rtmandreyev/construct(作者 rtmandreyev),协议 Apache-2.0。ZIP 保留协议文件(LICENSE, NOTICE),CHANGES.md 列出了 GameSkill 加的所有文件。

自检清单
- 尺寸用米写进 facts,每条事实标明 verified、user_supplied、inferred 或 decorative / Sizes in metres as facts, each with its certainty
- check 跑到 0 错误再 build 或 export / check reaches zero errors before build or export
- 会动的游戏道具用 --pieces glued 导出(不动的部分一个刚体,每个铰链再一个),在 Godot 里用 construct_joints.gd 挂上铰链 / Physics props export with --pieces glued (one body for what stays put, one per hinge) and get their hinges from construct_joints.gd in Godot
- 导进引擎才算完成:尺寸对、碰撞体在、动画在、跑一帧不报错 / Done means it runs in the engine: right size, colliders, animation, one frame with no errors
- 不做现有游戏或品牌的道具复制品 / No replicas of props from existing games or brands
推荐搭配
中文指南
这个 skill 做什么
Construct 让 agent 不写建模代码,而是把一个物体写成「数据」:事实(尺寸用米,并标明是查证的、用户给的、推测的还是装饰的)、由固定几种形状组成的部件、装配顺序和关节。确定性的引擎把它编译成一个会动的全息网页,也能导出 glTF/OBJ 3D 模型:每个部件是一个有名字的物体,关节变成「打开」动画,加 --pieces glued --colliders 就成了每个铰链一个刚体、带碰撞体的游戏道具。check 会给出每个问题的位置和修法,agent 按提示修到 0 错误。
什么时候用
- 要做有真实尺寸、带部件名、盖子或门能打开的游戏道具或白模
- 希望 agent 按诊断信息修模型,而不是瞎改网格代码
- 科幻 UI 里需要全息、扫描线风格的物体展示
怎么装
下载本页的 ZIP,把 construct/ 整个文件夹放进 agent 的 skills 文件夹:Claude Code 用 .claude/skills/,Codex、Gemini CLI、OpenCode 用 .agents/skills/,Cursor 用 .cursor/skills/,Copilot 用 .github/skills/,Windsurf 用 .windsurf/skills/,然后重启 agent。只需要 Python 3.10+。也可以直接对 agent 说:Install the skill from https://gameskill.dev/skills/construct/install.md
最小示例
gameskill/examples/ 是我们自己设计的道具「灯笼宝箱」:箱体、能掀开的盖子(铰链)、提手、锁扣和盖上的小灯笼。scene 文件按 skill 的规则写,check 和 check --fit 到 0 错误 0 警告,build 出全息页;导出两份 GLB:--colliders 版(每个部件一个碰撞盒,带「打开」动画)和 --pieces glued 版(箱体一个刚体、盖子一个刚体),材质用放在 scene 旁边的 chest-materials.json(木头、铁、灯光)。然后用 Godot 4.7.2 无界面模式做验收:像项目一样导入 GLB,检查部件名、碰撞体、打开动画和尺寸,用作者的 construct_joints.gd 把盖子挂到铰链上,放到地面跑物理帧确认不报错。
我们怎么测的
用 skill 自带的 scripts/cli.py 跑 check、build、export,确认 0 错误、0 警告、审计 PASS、三种导出都成功;Godot 4.7.2 导入后逐项检查:11 个部件都有名字、11 个碰撞体、有「打开」动画,播完后锁扣翻到背后、灯笼跟着盖子走;包围盒尺寸与 scene 里的米数相差不超过 2%;--pieces glued 版正好两个刚体,construct_joints.gd 建出 1 个 HingeJoint3D;放在地面上跑 60 个物理帧,移动不到 2 厘米、不穿地;导入和运行都没有 Godot 报错。截图是 Godot 里的渲染(左边关着,右边用自带动画打开)。结果在 gameskill/test-report.json。
我们为 GameSkill 版改了两处 SKILL.md,都写在 CHANGES.md 里:描述里加了一句「什么时候用」;导出说明里加了一句,告诉 agent construct_joints.gd 和 GODOT.md 在 upstream-support/ 里(它们在作者仓库里位于 skill 文件夹之外,原样随 ZIP 附上)。
和「AI 模型能在游戏里跑才算完成」的关系
X 上 @bykushnir 分享的「Blender → GLB → Godot 验收」思路(尺寸对、碰撞能用、运行不报错才算完成)就是我们这个示例的验收步骤,可以照搬到任何来源的 GLB 上。
搭配
blender-export-pipelines:从 Blender 导出到各引擎的设置godot-3d-essentials:在 Godot 里搭 3D 场景procedural-lowpoly-building:用代码生成低多边形建筑
安装
告诉你的 AI
Install the skill from https://gameskill.dev/skills/construct/install.md
GameSkill 测过的版本
mkdir -p .claude/skills
curl -fsSL https://gameskill.dev/dl/skills/construct.zip -o /tmp/gameskill-construct.zip
unzip -oq /tmp/gameskill-construct.zip -d .claude/skills
rm /tmp/gameskill-construct.zip包含内容
- scripts/cli.py: new, params, check (every problem with a path and a fix hint), build, review, export, print
- glTF 2.0 / OBJ export: every part a named object, joints as an open animation, --pieces and --colliders for game props
- A single-file WebGL hologram page per construct, in one house style
- Archetypes (case, book, guitar, synth, bottle, can, glass, car) and example scenes
- References on vocabulary, composition, animation, provenance and review rubrics
适合
- Game props and blockouts with real dimensions, named parts and doors or lids that open
- Props an agent can repair from diagnostics instead of guessing at mesh code
- Hologram and scanner looks for sci-fi UI
不适合
- Rigged characters or photoreal assets (the skill says so itself)
- Sculpted organic models: see the Blender skills
关于这个 Skill
Construct changes what the agent writes when it makes a 3D prop. Instead of mesh code, it writes a scene: facts with their certainty, parts built from a closed set of shapes, an assembly order and joints. A deterministic engine compiles that into an animated hologram page and into glTF or OBJ, with every part a named object and every joint an animation. check returns each problem with its path, a code and a fix hint, so the agent repairs instead of guessing.
For games, export --colliders gives a collision box per part and the joints as an open animation, and --pieces glued gives one rigid body for what stays put and one per hinge. Our example is an original lantern chest with a hinged lid, exported both ways and accepted the way a game would: imported by Godot 4.7.2, checked for part names, colliders, the open animation and its size in metres, its lid hung on a HingeJoint3D by the author's construct_joints.gd, then left on a floor for 60 physics frames.
Related
- Blender export pipelines for engine export settings from Blender.
- Godot 3D essentials for the scene around the prop.
环境要求
- Python 3.10+ (standard library only, nothing installed or downloaded)
- Optional: a Chromium-family browser for review stills, ffmpeg for video
相关主题
常见问题
基于 rtmandreyev/construct (作者 rtmandreyev,协议 Apache-2.0)。ZIP 里保留原作者的 LICENSE 和 NOTICE,ATTRIBUTION.md 和 CHANGES.md 写明来源提交和 GameSkill 加的内容。
搭配使用
作者标注的相关 Skills,或更适合相邻任务的 Skills。
Blender Export Pipelines
Export from Blender 5.2 with verified presets - Roblox (FBX/glTF, cages, R15, SurfaceAppearance), Unity (FBX, Humanoid), Unreal (FBX skeletal, Nanite, UCX), Godot/web (GLB, meshopt/Draco, WebP), USD.
Procedural Low-Poly Buildings (kit, validator, views)
A GameSkill original: build stylised low-poly buildings in code from a small spec, then prove them: plot and height limits, a triangle budget per tier, closed outward meshes, supported parts, level roofs and side-only taper measured from silhouettes, plus front, side, top and 3/4 renders checked against the geometry.
Godot 3D Essentials
Set up 3D scenes in Godot 4.7: transforms, cameras, lights, WorldEnvironment, materials and GridMap levels.
相似 skills
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.
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.
ForgeSkills
28 gated game-development agent skills (concept, orchestration, verification, Blender headless, reference reconstruction, textures, animation, VFX, lighting, foliage, Godot pipeline) plus Python tools that measure the result. GameSkill hosts the 27 we ran, with the tools. Apache-2.0.
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.