blender-kiln
Claude Code plugin that turns a text brief or a photo into a production-ready 3D asset through Blender: rebuilt by script, textured from CC0 scans, graded against the real object, optimized to GLB/FBX
翻译准备中
Agent skills that make real-time game VFX as code for Effekseer and verify them in real Godot renders (Claude Code, Codex and other Agent Skills hosts).
翻译准备中
技能Python · C#GitHub @kanaworksai-hue自行安装运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
安装型项目无需部署域名也可验证。个人仓库可通过 GitHub 登录验证,组织仓库可使用上方的仓库验证文件。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗English | 简体中文 | 日本語 | 한국어 | Português (Brasil) | Español
Agent skills that let a coding agent (Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and other Agent Skills hosts) make real-time game VFX the way a VFX artist iterates, in code:
design brief → textures → Python recipe → EffekseerCore build → real Godot filmstrip → look → fix one thing → repeat → independent review
effekseer-vfx — the authoring skill: craft rules, verified Effekseer/Godot engine conventions, about 30 composable
layer primitives, a static linter, the official EffekseerCore compiler with save/open read-back, a Godot Lab that
stages every effect as an exchange between two dummies, filmstrip capture with pixel flags, iteration history and
tamper-evident evidence that ties a review to the exact build it saw.vfx-review — the reviewer skill: a separate agent scores the strip against a fixed rubric without seeing the
recipe, because the author never grades its own work.scale='kaiju' builds a character-scale recipe 40x larger and 2.5x slower
(sizes, speeds, gravity, budgets and the review camera all follow); beam() makes a held beam whose end point the
game moves every frame (Vfx.beam() → aim() → release()); charge_chain() lights arcs along a chain of
points; photographic fire, soot and smoke flipbooks; soft particles verified in Forward+.vfx paintover turns a captured frame into an image-edit prompt for a concept target. Hard-edged stylized primitives
(spiral_ribbons, spike_crown, speed_streaks, stylized_pair, sparkle), greyscale mask templates, and
screen feedback (screen=: shake, impact frame, hit-stop) that the Lab plays and Vfx.screen_cue hands to the game.You choose per effect; nothing forces one way.
| Way | How | Plays in |
|---|---|---|
| Procedural | layered primitives in a Python recipe, painted textures, EffekseerCore build, Godot review (everything above) | Effekseer → Godot |
| Video flipbook | an image-to-video model (verified with Seedance 2.5; any model with first and last frames works) paints the motion on black; vfx video-flipbook keys, crops, masks and packs it, vfx video-grade gives every sheet of an element the same cel-shaded look | Unity (URP), or Effekseer → Godot |
| Combined | the sheet is the body layer of a recipe (video_body(...)); primitives add the contact flash, sparks, rings, cracks, decals and heat haze | Effekseer → Godot, Unity |
What was not possible before and is now:
vfx unity-install <UnityProject> adds a URP runtime package
(data-driven ElementProfile skills with projectile, instant-bolt and ground-eruption delivery, layered particles,
hit-stop, shake, target lift) and its procedural textures; vfx unity-export copies a sheet with its grid; three
menu items (or one batch-mode command an agent can run) turn sheets into a playable skill and a demo scene.vfx/video_prompts.json, so an agent can rebuild or vary a sheet exactly. Ask: "Make a water-column skill from a
video flipbook and set it up in my Unity project."Guide: references/video-flipbook.md. The skill ships the
technique only: clips, sheets and characters you generate stay in your own project.
| Mode | What you can do | Needs |
|---|---|---|
| authoring | write briefs and recipes, lint, process and measure textures | Python 3.11+ or uv on macOS, Linux or Windows (macOS's built-in Python 3.9 is too old) |
| build | compile .efkefc / .efk through the official EffekseerCore | macOS on Apple silicon or Windows x64, network for the first setup (~250 MB into ~/.cache/effekseer-vfx) |
| render | Godot filmstrip review, Lab, preview, packaging | the above + Godot 4 (Forward+) on PATH or in GODOT; ffmpeg for reference clips and recordings |
| video flipbooks | video-* commands | authoring mode + ffmpeg; clips from any image-to-video model |
| Unity | play sheets as element skills | Unity 6 (6000.0+) with URP 17; verified on 6000.5 |
Build and render are verified on macOS ARM64 (Effekseer Core 1.80.7, EffekseerForGodot4 1.80.5.1, Godot 4.7, .NET 9) and on Windows 11 x64 (the same versions, Godot 4.7.2). Windows ARM64 gets the matching .NET runtime from setup but is not verified. Linux runs authoring mode; its build path is not verified.
On Windows every sh <skill>/scripts/... command below also works from Git Bash (what Claude Code uses); from cmd or
PowerShell use <skill>\scripts\vfx.cmd for vfx and
powershell -NoProfile -ExecutionPolicy Bypass -File <skill>\scripts\setup.ps1 for setup.sh.
The simplest way: give this repository's URL to your coding agent and ask it to install the skill. The steps it follows are in For agents: installing from this URL. Or install it yourself:
Claude Code (type these in Claude Code)
/plugin marketplace add kanaworksai-hue/effekseer-vfx-skill
/plugin install effekseer-vfx@effekseer-vfx
Codex (ask in a Codex chat; the skills land in ~/.codex/skills, or $CODEX_HOME/skills, and are
used from the next turn or a new session)
$skill-installer install https://github.com/kanaworksai-hue/effekseer-vfx-skill/tree/main/skills/effekseer-vfx
$skill-installer install https://github.com/kanaworksai-hue/effekseer-vfx-skill/tree/main/skills/vfx-review
Other agents (Cursor, Gemini CLI, Copilot, OpenCode, ...)
npx skills add kanaworksai-hue/effekseer-vfx-skill
Or copy skills/effekseer-vfx and skills/vfx-review into your agent's skills folder (~/.claude/skills/,
.agents/skills/, ...). Each skill folder
carries its own LICENSE (and effekseer-vfx its THIRD_PARTY_NOTICES.md), so a copied folder keeps them.
/plugin must be typed by the user, so show it to them. Otherwise clone the repository and copy both skill
folders into your skills folder, keeping their names: git clone --depth 1 <this repository URL>, then copy
skills/effekseer-vfx and skills/vfx-review to ~/.claude/skills/ (Claude Code, all projects),
<project>/.claude/skills/ (Claude Code, one project), ~/.codex/skills/ (Codex; $CODEX_HOME/skills if set) or
your host's skills folder (for example .agents/skills/).
Do not copy anything else; the skills are self-contained and read-only at run time.sh <skill>/scripts/vfx doctor (<skill> is the
installed effekseer-vfx folder; on Windows outside Git Bash, <skill>\scripts\vfx.cmd doctor) and follow its
next steps.sh <skill>/scripts/setup.sh (Windows: setup.ps1, the exact command is in
doctor's next) installs the toolchain into ~/.cache/effekseer-vfx
(about 250 MB on macOS ARM64 and Windows x64; --authoring-only elsewhere), and the first vfx init downloads the official
Effekseer Godot plugin (about 34 MB). Setup needs Python 3.11+ or uv: if doctor reports neither, ask the user to
install one. Godot 4 is never installed for the user; ask them to install it (or to allow
you to) and set GODOT if it is not on PATH.vfx review, preview and showcase open a Godot window on the user's
desktop. A sandboxed agent (Codex in its workspace sandbox, for example) cannot open one: run those commands with
the user's approval outside the sandbox; if your host cannot leave its sandbox, give the user the exact command to
run in a terminal on their desktop. A review that renders no frame stops after about 90 s with "rendered no frame"
(most likely the window could not open; check the Godot output it includes). doctor's render: true only means
Godot was found.vfx doctor again (modes should show what this machine supports), then follow
. Report what works and what is missing; do not claim build or render works on a
machine where says it does not.Ask your agent, in your game project: "Set up the effekseer-vfx skill here and show me the fire example." It will run:
sh <skill>/scripts/vfx doctor # what this machine can do, and what to install
sh <skill>/scripts/setup.sh # macOS ARM64 / Windows x64; use --authoring-only elsewhere (asks you first)
sh <skill>/scripts/vfx init # creates vfx/ with the Godot Lab, materials and math textures
sh <skill>/scripts/vfx examples add fire
sh <skill>/scripts/vfx build --ids VFX_Projectile_Fire VFX_Fire_Explosion
sh <skill>/scripts/vfx review --ids VFX_Projectile_Fire VFX_Fire_Explosion --note "baseline"
sh <skill>/scripts/vfx showcase # play the library in the Lab
Then ask for an effect: "Make a lightning strike for a targeted spell, short and sharp, with a return stroke." The
skill makes the agent write a brief, request painted textures from your image generation tool (or ask you for
them), write the recipe, build, review the strips over several rounds and hand the result to an independent reviewer
before it reports effect-verify as passed. Until that independent review is submitted and vfx overview has
been rerun, effect-verify says verified: false even when the effect renders correctly; an agent should report
"builds and renders" rather than "verified" at that point. The toolchain lives in ~/.cache/effekseer-vfx; set
EFFEKSEER_VFX_HOME to put it elsewhere (see the command reference).
Complex painted shapes (smoke, slash arcs, fire, cracks, ice, symbols) must come from an image generation model; the
skill never fakes them with code. If your agent has a built-in or connected image tool, it uses it with the prompts it
records in vfx/texture_prompts.json. Otherwise it tells you exactly which image to generate and where to save it.
Math shapes (glows, rings, noise, gradients, trails, distortion maps) are generated procedurally.
Effects end up as .efk runtime exports and .efkefc sources with a vfx_manifest.json. The generated Godot project
contains a small API:
var handle = Vfx.play("VFX_Fire_Explosion", position)
var shot = Vfx.launch("VFX_Projectile_Fire", from, to)
shot.arrived.connect(func(at): Vfx.play("VFX_Fire_Explosion", at))
Beams are aimed every frame; the game owns the end point (a ray cast, a target bone):
var ray = Vfx.beam("VFX_Kaiju_Atomic_Beam", mouth, target)
ray.aim(mouth, new_target) # each frame: sweep, follow the head
ray.release() # narrows and fades out, then frees itself
See skills/effekseer-vfx/references/godot.md and, for giants and kaiju,
references/scale.md.
skills/effekseer-vfx/ SKILL.md, references/ (craft, engine conventions, review...), scripts/ (vfx CLI and vfx.cmd,
setup.sh and setup.ps1, vfxkit, vendored effekseer_ai), assets/ (Godot Lab, materials, rubric,
brief schema, examples, unity/ URP package)
skills/vfx-review/ SKILL.md for the independent reviewer
docs/zh/, docs/ja/ Chinese and Japanese translations of the references
.claude-plugin/ Claude Code plugin and marketplace manifests
tests/ pure-Python tests (no Core or Godot needed)
iterate); rebuild and review before relying on them.soft particles are verified in Forward+ (they fade against opaque depth only); the Compatibility renderer has no
depth texture and cannot use them.sh skills/effekseer-vfx/scripts/setup.sh --authoring-only
~/.cache/effekseer-vfx/venv/bin/python -m pip install pytest
~/.cache/effekseer-vfx/venv/bin/python -m pytest -q tests
On Windows (PowerShell; drop --authoring-only to also run the EffekseerCore build tests):
powershell -NoProfile -ExecutionPolicy Bypass -File skills\effekseer-vfx\scripts\setup.ps1 --authoring-only
~\.cache\effekseer-vfx\venv\Scripts\python.exe -m pip install pytest # a venv made by uv: uv pip install --python <that python.exe> pytest
~\.cache\effekseer-vfx\venv\Scripts\python.exe -X utf8 -m pytest -q tests
Contributions that confirm a new engine convention should add it to
skills/effekseer-vfx/references/engine-conventions.md together with how it was measured.
Effekseer, Godot and Unity are trademarks of their respective owners. This is an independent project, not affiliated with or endorsed by them.
doctor