Assets Shader List All
IvanMurzak/Unity-MCP
List all shaders available in the project assets and packages, sorted by name.
Niagara emitter color/curve authoring (tint, hue-shift, ColorFromCurve keys), rapid-iteration parameter tuning, and Custom-HLSL scratch-pad authoring (NiagaraEmitterService +…
$ npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kevinpbuckley/VibeUE niagara-emitters --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/kevinpbuckley/VibeUE.git skills-src && mkdir -p .claude/skills && cp -r skills-src/Content/Skills/niagara-emitters .claude/skills/niagara-emitters && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "niagara-emitters" agent skill from https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emitters into .claude/skills/niagara-emitters/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "niagara-emitters", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emittersType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kevinpbuckley/VibeUE niagara-emitters --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kevinpbuckley/VibeUE.git skills-src && mkdir -p .agents/skills && cp -r skills-src/Content/Skills/niagara-emitters .agents/skills/niagara-emitters && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "niagara-emitters" agent skill from https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emitters into .agents/skills/niagara-emitters/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "niagara-emitters", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kevinpbuckley/VibeUE niagara-emitters --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kevinpbuckley/VibeUE.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/Content/Skills/niagara-emitters .cursor/skills/niagara-emitters && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "niagara-emitters" agent skill from https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emitters into .cursor/skills/niagara-emitters/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "niagara-emitters", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/kevinpbuckley/VibeUE.git --path Content/Skills/niagara-emitters--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kevinpbuckley/VibeUE niagara-emitters --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kevinpbuckley/VibeUE.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/Content/Skills/niagara-emitters .gemini/skills/niagara-emitters && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "niagara-emitters" agent skill from https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emitters into .gemini/skills/niagara-emitters/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "niagara-emitters", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install kevinpbuckley/VibeUE niagara-emittersInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kevinpbuckley/VibeUE.git skills-src && mkdir -p .github/skills && cp -r skills-src/Content/Skills/niagara-emitters .github/skills/niagara-emitters && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "niagara-emitters" agent skill from https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emitters into .github/skills/niagara-emitters/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "niagara-emitters", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kevinpbuckley/VibeUE niagara-emitters --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kevinpbuckley/VibeUE.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/Content/Skills/niagara-emitters .opencode/skills/niagara-emitters && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "niagara-emitters" agent skill from https://github.com/kevinpbuckley/VibeUE/tree/master/Content/Skills/niagara-emitters into .opencode/skills/niagara-emitters/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "niagara-emitters", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
niagara-emittersNiagara emitter color/curve authoring (tint, hue-shift, ColorFromCurve keys), rapid-iteration parameter tuning, and Custom-HLSL scratch-pad authoring (NiagaraEmitterService +…
Niagara Emitters is an agent skill from kevinpbuckley/VibeUE. Niagara emitter color/curve authoring (tint, hue-shift, ColorFromCurve keys), rapid-iteration parameter tuning, and Custom-HLSL scratch-pad authoring (NiagaraEmitterService + NiagaraScratchPadService). Module/renderer CRUD is owned by the engine NiagaraToolsets. Use when the user asks to recolor or hue-shift particles, edit color curves, tune emitter params, or build a scratch-pad/Custom HLSL module. For system-level lifecycle, load niagara-systems.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts (for example `color.md`, `reference.md` and `scratch-pad.md`).
It sits in Game Development, covering Shaders. It works with Model Context Protocol. The repository describes itself as: Unreal Engine Vibe Coding tool. The licence is MIT.
Read from SKILL.md and the folder at commit dc051be. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/, which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Niagara Emitters loads about 2k tokens when it runs. Until then it costs about 118 tokens; SKILL.md has 662 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from kevinpbuckley/VibeUE at commit dc051be, republished under its MIT licence (© kevinpbuckley). 662 words, ~2,042 tokens.
.claude/skills/niagara-emitters/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.🧠 Brains complement: IF an
unreal-engine-skills-managertool (external MCP) exists in this session, call it with{action: "load", skill: "niagara-vfx"}for UE domain knowledge on this topic — correct APIs, architecture, best practices — and treat it as the rubric for any review / "best practices" question. If no such tool is available (e.g. running under Claude Code or Codex without that MCP), skip this line entirely and proceed with this skill alone — do NOT attempt the call.
Architecture (read first): VibeUE extends Unreal's native MCP endpoint. Emitter module and renderer CRUD (add/remove/enable/reorder modules, add/remove renderers, set module/renderer inputs, search module scripts) are owned by the engine
NiagaraToolsets.*toolsets, called throughcall_tool. VibeUE'sNiagaraEmitterServicewas trimmed to the color/curve authoring the engine doesn't provide, plus a rapid-iteration-parameter reader.
VibeUE NiagaraEmitterService (this skill) keeps ONLY color/curve authoring + a param reader:
set_color_tint — add/set a ScaleColor tint (handles ColorFromCurve automatically)get_color_curve_keys / set_color_curve_keys — read/replace ColorFromCurve keyframesshift_color_hue — hue-rotate a ColorFromCurve while preserving detail (best for recolors)get_rapid_iteration_parameters — read an emitter's rapid-iteration paramsNiagaraScratchPadService authors scratch-pad module graphs:
For module / renderer CRUD → engine NiagaraToolsets.* via call_tool (discover with
list_toolsets / describe_toolset). For system-level operations (create system, add emitters,
user params, compile) → engine NiagaraToolsets.* and the niagara-systems skill. Rapid-iteration
param writes (set_rapid_iteration_param*) live on NiagaraService (niagara-systems skill).
Loading skills: skills load through the engine's
AgentSkillToolset(ListSkills/GetSkills) — there is novibeue-skills-managertool. Run VibeUE services withexecute_python_code(unreal.<Service>.<method>()); reach engine toolsets withcall_tool.
Niagara modules exist in different script stages:
EmitterSpawn - Runs once when emitter spawnsEmitterUpdate - Runs every frame for emitterParticleSpawn - Runs once when each particle spawns ParticleUpdate - Runs every frame for each particleNiagaraToolsets operation — stage still mattersAdding modules and renderers moved to the engine toolsets. Discover the exact tool + schema with
describe_toolset and invoke via call_tool:
# describe_toolset("NiagaraToolsets.NiagaraToolset_System") # (find the add-module / add-renderer tools)
# call_tool(toolset_name="NiagaraToolsets.NiagaraToolset_System",
# tool_name="<add module tool>", arguments={ ... })Whatever the engine tool's signature, which stage a module goes in still matters — this is the #1 cause of a system that "compiles" but is invalid:
| Module | Correct stage |
|---|---|
InitializeParticle | ParticleSpawn |
SpawnRate, SpawnBurstInstantaneous, EmitterState | EmitterUpdate |
ParticleState, SolveForcesAndVelocity, ScaleColor, color/size/velocity update modules | ParticleUpdate |
SpawnRate is an emitter module — putting it in ParticleUpdate makes the system invalid, and
a compile reports only the generic "System is invalid after compilation" with no pointer to the
culprit. If a compile is "invalid" after you added modules, first suspect a mis-staged module
(list the emitter's modules via the engine toolset and check each module's stage). Stage strings are
ParticleSpawn / ParticleUpdate / EmitterSpawn / EmitterUpdate.
For building an emitter entirely from a scratch-pad / Custom HLSL module (which IS a VibeUE operation), see
scratch-pad.md.
Color.Scale Color, Velocity, Size, and other parameters often exist in BOTH ParticleSpawn AND ParticleUpdate stages!
When changing these parameters, you MUST update BOTH stages:
IMPORTANT: Use full parameter names from list_rapid_iteration_params (e.g., Constants.emitter.Color.Scale Color)
# ❌ WRONG - Only sets ParticleUpdate, color may not work correctly
unreal.NiagaraService.set_rapid_iteration_param_by_stage(
path, emitter, "ParticleUpdate", f"Constants.{emitter}.Color.Scale Color", "(0.0, 3.0, 0.0)"
)
# ✅ CORRECT - Use set_rapid_iteration_param to set ALL matching stages at once
unreal.NiagaraService.set_rapid_iteration_param(
path, emitter, f"Constants.{emitter}.Color.Scale Color", "(0.0, 3.0, 0.0)"
)
# ✅ OR explicitly set BOTH stages
unreal.NiagaraService.set_rapid_iteration_param_by_stage(
path, emitter, "ParticleSpawn", f"Constants.{emitter}.Color.Scale Color", "(0.0, 3.0, 0.0)"
)
unreal.NiagaraService.set_rapid_iteration_param_by_stage(
path, emitter, "ParticleUpdate", f"Constants.{emitter}.Color.Scale Color", "(0.0, 3.0, 0.0)"
)Why? ParticleSpawn sets initial color, ParticleUpdate multiplies it. If you only set one, the other uses its default value and the result won't be what you expect.
| Task | Sub-doc / where |
|---|---|
| Recolor an emitter (hue shift / tint / scale) | color.md (VibeUE) |
| Manage ColorFromCurve modules / curve keys | color.md (VibeUE) |
| Read rapid-iteration params | reference.md (VibeUE) |
| Set rapid-iteration params (all stages) | reference.md → NiagaraService (niagara-systems) |
| Add modules / renderers to an emitter | engine NiagaraToolsets.* via call_tool (see reference.md) |
| Build an emitter from scratch / Custom-HLSL scratch module | scratch-pad.md (VibeUE) |
color.md — all color editing: ColorFromCurve detection, choosing the right method
(shift_color_hue vs tint vs scale), curve keys, per-stage color, managing ColorFromCurve.reference.md — VibeUE color/curve + rapid-iteration-param readers, plus where module/renderer
CRUD lives (engine NiagaraToolsets) and common property names.scratch-pad.md — building emitters from scratch and Custom-HLSL Scratch-Pad authoring.Compile and save after changes (compile via the engine NiagaraToolsets tool;
unreal.EditorAssetLibrary.save_asset(path) to persist). For color edits, re-read the curve keys
(get_color_curve_keys) or rapid-iteration params to confirm the change landed in every stage where
the param exists.
© kevinpbuckley, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts) in Content/Skills/niagara-emitters of kevinpbuckley/VibeUE.
Open the folder on GitHubat commit dc051be
Niagara Emitters next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Niagara Emitters this skillkevinpbuckley/VibeUE | 730 | — | ~2k | Automated safety check: Pass | MIT | |
| Assets Shader List AllIvanMurzak/Unity-MCP | 4.4k | — | ~435 | Automated safety check: Pass | Apache-2.0 | |
| Unreal Material and VFX Workflowflopperam/unreal-engine-mcp | 1.1k | — | ~927 | Automated safety check: Pass | None | |
| UMG Material MCPwinyunq/UnrealMotionGraphicsMCP | 210 | — | ~913 | Automated safety check: Pass | MIT | |
| Touchdesignersatoruhiga/claude-touchdesigner | 127 | — | ~1.5k | Automated safety check: Pass | None | |
| Threejs Visual Systemsmintdotgg/mint-threejs-skills | 114 | — | ~816 | Automated safety check: Pass | MIT |
IvanMurzak/Unity-MCP
List all shaders available in the project assets and packages, sorted by name.
flopperam/unreal-engine-mcp
Walks an Unreal Engine MCP agent through building materials, Niagara particle systems, Chaos destruction, and curve assets with inspect-then-edit steps.
winyunq/UnrealMotionGraphicsMCP
Creates, edits and compiles Unreal Engine 5.8 material assets as one HLSL Custom node through the UMG MCP bridge, instead of editing .uasset files directly.
satoruhiga/claude-touchdesigner
Provides patterns and best practices for TouchDesigner via MCP API - operator creation, network layout, rendering, GLSL shaders, data conversion (CHOP/SOP/POP/TOP/DAT).
mintdotgg/mint-threejs-skills
Build and upgrade Three.js visual systems for apps and games using Mint MCP assets, authored geometry, materials, lighting, shaders, VFX, technical art, and measured performance.
IvanMurzak/Unity-MCP
Get detailed data about a shader asset — properties, subshaders, passes, compilation messages, and supported status.
kevinpbuckley/VibeUE
Previews, validates and bakes bone-rotation edits on Unreal Engine AnimSequences, enforcing a coordinate space and a constraint-checked preview-validate-bake loop.
kevinpbuckley/VibeUE
Creates and edits Unreal Engine Animation Montages through AnimMontageService: sections, slots, segments, branching points, notifies and blend settings.
kevinpbuckley/VibeUE
Creates and edits AnimSequence keyframes and bone tracks in Unreal Engine through AnimSequenceService, following an inspect, preview, validate and bake workflow with correct bone-space handling.
kevinpbuckley/VibeUE
Imports files into Unreal Engine, exports textures, reads the Content Browser selection and checks open assets via VibeUE, plus mesh reimport material fixes.
kevinpbuckley/VibeUE
Changes Unreal Engine console variables, scalability levels and raw INI values through VibeUE's Python API, now that registered settings moved to the engine's own toolset.
kevinpbuckley/VibeUE
Creates and wires Unreal Engine Enhanced Input assets through VibeUE's InputService: Input Actions, Mapping Contexts, key bindings, triggers and modifiers.
Works with
Categories
Niagara emitter color/curve authoring (tint, hue-shift, ColorFromCurve keys), rapid-iteration parameter tuning, and Custom-HLSL scratch-pad authoring (NiagaraEmitterService +…. Niagara Emitters is an agent skill from kevinpbuckley/VibeUE. Niagara emitter color/curve authoring (tint, hue-shift, ColorFromCurve keys), rapid-iteration parameter tuning, and Custom-HLSL scratch-pad authoring (NiagaraEmitterService + NiagaraScratchPadService).
Niagara Emitters fits situations like: the user asks to recolor; hue-shift particles; edit color curves; tune emitter params.
Run `npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a claude-code`. Or copy the skill folder (Content/Skills/niagara-emitters in kevinpbuckley/VibeUE) into .claude/skills/niagara-emitters in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a codex`. Or copy the skill folder (Content/Skills/niagara-emitters in kevinpbuckley/VibeUE) into .agents/skills/niagara-emitters in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kevinpbuckley/VibeUE --skill niagara-emitters -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/niagara-emitters, .gemini/skills/niagara-emitters, .github/skills/niagara-emitters and .opencode/skills/niagara-emitters in your project.
SKILL.md names no scripts, command-line tools or credentials: Niagara Emitters is instructions for the agent only. Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Niagara Emitters is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 8.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Niagara Emitters: Assets Shader List All (IvanMurzak/Unity-MCP, 4.4k stars), Unreal Material and VFX Workflow (flopperam/unreal-engine-mcp, 1.1k stars), UMG Material MCP (winyunq/UnrealMotionGraphicsMCP, 210 stars) and Touchdesigner (satoruhiga/claude-touchdesigner, 127 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kevinpbuckley (a GitHub user) maintains it in kevinpbuckley/VibeUE, which has 730 GitHub stars. The repository holds 39 skills in this directory. The repository was last updated on October 7, 2026.
Source: kevinpbuckley/VibeUE on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.