Pixijs
RSamaium/CanvasEngine
Use this skill first for ANY PixiJS v8 task; it routes to the right specialized skill for the job.
A skill your agent uses when a Unity 6.3 URP task involves shaders: hand-written HLSL, Shader Graph water, toon, dissolve or outline, Custom Function nodes, a renderer feature or full-screen effect…
$ npx skills add scenario-labs/skills --skill scenario-unity-shaders -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install scenario-labs/skills scenario-unity-shaders --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/scenario-labs/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-shaders .claude/skills/scenario-unity-shaders && 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 "scenario-unity-shaders" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shaders into .claude/skills/scenario-unity-shaders/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unity-shaders", 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/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shadersType 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 scenario-labs/skills --skill scenario-unity-shaders -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install scenario-labs/skills scenario-unity-shaders --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-shaders .agents/skills/scenario-unity-shaders && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "scenario-unity-shaders" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shaders into .agents/skills/scenario-unity-shaders/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unity-shaders", 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 scenario-labs/skills --skill scenario-unity-shaders -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install scenario-labs/skills scenario-unity-shaders --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-shaders .cursor/skills/scenario-unity-shaders && 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 "scenario-unity-shaders" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shaders into .cursor/skills/scenario-unity-shaders/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unity-shaders", 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/scenario-labs/skills.git --path skills/game-engines/unity/scenario-unity-shaders--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 scenario-labs/skills --skill scenario-unity-shaders -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install scenario-labs/skills scenario-unity-shaders --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-shaders .gemini/skills/scenario-unity-shaders && 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 "scenario-unity-shaders" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shaders into .gemini/skills/scenario-unity-shaders/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unity-shaders", 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 scenario-labs/skills scenario-unity-shadersInstalls 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 scenario-labs/skills --skill scenario-unity-shaders -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-shaders .github/skills/scenario-unity-shaders && 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 "scenario-unity-shaders" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shaders into .github/skills/scenario-unity-shaders/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unity-shaders", 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 scenario-labs/skills --skill scenario-unity-shaders -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install scenario-labs/skills scenario-unity-shaders --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/game-engines/unity/scenario-unity-shaders .opencode/skills/scenario-unity-shaders && 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 "scenario-unity-shaders" agent skill from https://github.com/scenario-labs/skills/tree/main/skills/game-engines/unity/scenario-unity-shaders into .opencode/skills/scenario-unity-shaders/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "scenario-unity-shaders", 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.
scenario-unity-shadersA skill your agent uses when a Unity 6.3 URP task involves shaders: hand-written HLSL, Shader Graph water, toon, dissolve or outline, Custom Function nodes, a renderer feature or full-screen effect…
Scenario Unity Shaders is an agent skill from scenario-labs/skills. Use when a Unity 6.3 URP task involves shaders: hand-written HLSL, Shader Graph water, toon, dissolve or outline, Custom Function nodes, a renderer feature or full-screen effect on Render Graph, compute shaders, shader variants, keywords, stripping, Shader Build Settings, PSO warm-up, or shader cost; or when a material turns pink or invisible, casts no shadow, ignores extra lights under Forward+, an effect 'does nothing', the game stutters the first time something appears, or builds bloat with variants.
Its SKILL.md is about 5.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 32 other files, including scripts and reference files (for example `references/critique.md`, `references/expert-notes.md` and `references/gui-paths.md`).
It sits in Game Development, covering Shaders. The repository describes itself as: Get production-ready images, video, audio, and 3D from any AI agent: skills that pick the right model, price before spending, and keep characters and brands consistent through… The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit f6f8ab7. 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 10 files in scripts/ (C#, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
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.
Scenario Unity Shaders loads about 5.1k tokens when it runs, and up to ~36k if it reads all its reference files. Until then it costs about 133 tokens; SKILL.md has 2,075 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 scenario-labs/skills at commit f6f8ab7, republished under its MIT licence (© scenario-labs). 2,075 words, ~5,128 tokens.
.claude/skills/scenario-unity-shaders/SKILL.md (or your agent's skills folder). This skill also uses 27 other files; get the full folder from GitHub.Expert shading in Unity 6.3 is a shader you can prove: it compiles for the target graphics API, every pass agrees, its variants are counted after stripping, its first use is shown warm, its cost is measured in GPU milliseconds, and its look is checked in a capture with numbers. An agent without a mouse gets there through text: hand-written URP HLSL is the primary route, Shader Graph is used through existing graphs driven by exposed properties plus agent-owned .hlsl behind Custom Function nodes, and new graph wiring is a GUI step (references/gui-paths.md). Target: 6000.3.21f1, URP 17.3, Shader Graph 17.3, Metal on Apple Silicon. If a sibling skill named here is missing from your available skills, ask the user to install it (npx skills add scenario-labs/skills --skill <name>); unattended, proceed from tool schemas and flag the gap.
REQUIRED BACKGROUND: scenario-unity-expert (channels, review loop, 6.3 traps). Its toolkit (ut_env, ut_run, ut_review, AgentKit) is imported, never copied.
Status (2026-09-24, after the blind-grade refactor): every procedure ran in Unity 6000.3.21f1 here: tests/code/unity-shaders/run_all.sh --live (73 live checks including a development-player PSO proof, 32 offline checks, all passing; evidence in archive/tests/unity-shaders/).
AgentPasses.hlsl gives hand-written shaders too. With graphs, duplicate one, set its exposed references, put changing logic in a File-mode .hlsl. Graph Settings bind every pass: Alpha Clipping without Allow Material Override writes #define _ALPHATEST_ON 1 into all 8 generated passes, and no Boolean keyword removes it (installed UniversalTarget.cs, observed).clip() run in ShadowCaster, DepthOnly and DepthNormals too (6.3 Manual; Ilett [00:37:52]). A missing DepthOnly pass makes an opaque shader invisible with Depth Priming (observed). DepthNormals writes the raw world normal: the Manual's normal * 0.5 + 0.5 example reads back wrong in SSAO and outlines (observed).Lit.shader (Ilett [00:14:51]; ut_shaders.urp_lit_keywords()): 6.3 has _CLUSTER_LIGHT_LOOP and four soft shadow variants. LIGHT_LOOP_BEGIN skips directional lights, so a custom loop needs a directional pre-loop under Forward+; Unity's own Custom Lighting sample lacks it (observed).shader_feature for material toggles, multi_compile only for runtime C# toggles, dynamic_branch tested with if, never #if (6.3 Manual). Strict Shader Variant Matching before stripping, then the funnel in the build log (Carotenuto, Unity blog 2024). A shader_feature (or _local) variant ships only if a material in the build enables it (observed 0 vs 6): never toggle one from runtime C#. Unity 6 Shader Build Settings exclude or retype keywords with zero code, but a dynamic_branch override is silently ignored for #if-tested keywords, URP's soft shadow and SSAO sets included (observed).GraphicsStateCollection per graphics API and platform in a development player, warm it behind the loading screen, and show gameplay frames with zero Shader.CreateGPUProgram samples and zero logged uploads (6.3 Manual; observed 14 to 0 on Metal).sin on a float4 about 3x a float, 10x or more a multiply-add loop. Half pays only where a device profiler shows ALU-bound (Freya Holmér, kfM-yu0iQBk [01:20:26]): desktop PlatformDefault compiles half as float.RecordRenderGraph declares, never records; blit once into a new texture then resourceData.cameraColor = destination; gate in AddRenderPasses; refuse the back buffer (6.3 docs; Unity dither sample, U8PygjYAF7A [00:09:06] [00:10:10]).Mobile_RPAsset has Depth Texture off: depth-faded water needs it on or a baked shore mask..hlsl) or code only.MeshRenderer/SkinnedMeshRenderer.SetShaderUserValue (6.3, SRP Batcher friendly), or MaterialPropertyBlock (breaks the SRP Batcher).Assets/AgentShaders/.ut_shaders.install(P); RendererFeatureJobs.ListFeatures (every quality level, asset, renderer, feature); lint_shader_file, shadergraph_summary (targets, properties, Graph Settings findings), lint_project_keywords. GATE: pipeline facts in the plan; lint errors listed.scripts/Shaders/: AgentLit, AgentToon, AgentWater, AgentDissolve, AgentEdgeOutline, AgentGrayscale, AgentCompute, shared AgentPasses.hlsl (AGENT_CLIP/AGENT_DISPLACE) and AgentNoise.hlsl. Graph route: ShaderGraphJobs.ImportPackageSample, DuplicateGraph, shadergraph_set_target_settings, GeneratedCode, AgentCustomLighting.hlsl. GATE: lint zero errors.ShaderJobs.ValidateShaders (ShaderUtil.GetShaderMessages plus CompileVariant per pass for Metal). GATE: zero errors, the four opaque passes present.SetupMaterials, ShaderLab.BuildScene, ShaderLab.Shots (many shots per boot: material, renderer, feature and URP changes; probes projected to pixels). GATE: ut_review flags clean, contact sheet opened, probe numbers (shadow darker than open ground, dissolve shadow gone at 1, extra lights change the lit side).RendererFeatureJobs.AddFeature with AgentFullscreenFeature or the zero-code FullScreenPassRendererFeature. GATE: on/off captures differ as intended; no back-buffer error.VariantJobs.StrippingSettings (strict matching on), BuildShaderBundle for the shipping materials, parse_variant_funnel, variant_budget_check, strip rules or KeywordOverrides (Shader Build Settings), PostProcessingAudit (every VolumeProfile under Assets/ keeps its post variants). GATE: shipped count per shader under budget; logger total equals Unity's "After scriptable stripping"; overrides cleared or committed on purpose.PsoJobs.BuildPsoScene, ut_run.build(development=True), ut_shaders.run_pso_player trace, cold, warm; PsoJobs.InspectCollection; ship StreamingAssets/PSO/<platform>_<api>.graphicsstate read by AgentPsoProbe. GATE: pso_gate clean (cold shows uploads, warm shows none by marker and by log).GpuCostJobs.MeasureFullscreenCost A/B, interleaved, async compilation off (precision_model for half tests). GATE: faster in ms beyond noise; device numbers from a development player (scenario-unity-performance)..graphicsstate per API, and the evidence packet (Handoffs).| Value | Relative to | Source |
|---|---|---|
| 7,688 full; 4,046 per stage; 62 after settings; 13 shipped | AgentKit/Lit in a macOS AssetBundle build with the template's URP assets | observed |
| 13 to 11 | AgentLit shipped variants after excluding the soft shadow set in Shader Build Settings | observed |
| 433 to 577 | UberPost variants when one unused Bloom HQ + dirt profile sits under Assets/ | observed |
| 14 to 0; 1.8 to 2.4 ms | first-use GPU program uploads in gameplay, cold vs warm; warm-up of 26 to 27 PSOs in one frame, macOS player | observed |
| 0.007 to 0.033 / 0.29 to 0.42 / 0.89 to 1.66 ms | one 1080p full-screen draw: 64 multiply-adds / 64 sin / 64 float4 sin, M5 Max; compare within one run | observed |
| 0.92 to 1.00 / 0.77 to 0.89 | half4 over float4 sin time, PlatformDefault / Unified precision model, M5 Max (noise about 10 %) | observed |
| more than 128 keywords, 4 reserved | per shader: compile slows | 6.3 Manual |
| 2000 / 2450 / 3000 | Geometry / AlphaTest / Transparent queues | Cyanilux |
| 64x1x1, 8x8x1 | compute thread groups; ceil-divided dispatch plus bounds check | 6.3 Manual, [added] |
| (1.2, 0.35, 0.03) vs (4, 1.1, 0.15) | HDR dissolve edge that stays orange vs washes to cream under Neutral tonemapping | observed |
| 0.2126, 0.7152, 0.0722 | Rec. 709 luminance on linear color | 6.3 Manual |
lint_project_keywords zero errors; ValidateShaders zero errors for the target API; SRP Batcher compatible (read after a render); probes (shadow luma under 0.75x open ground; dissolve shadow restored at 1; extra lights change the lit side in Forward and Forward+; water normals calmer at the shore than deep); feature on/off difference; shipped variants under budget and stable; no stray VolumeProfile; pso_gate clean per API; GPU ms A/B; compute GPU equals CPU (max error below 1e-5).| Mistake | What it looks like | Fix |
|---|---|---|
| no DepthOnly pass | object vanishes with Depth Priming Forced | AgentDepthOnlyVertex/Fragment |
| clip only in the forward pass | dissolved object still casts a full shadow | AGENT_CLIP shared by all passes |
DepthNormals returns n * 0.5 + 0.5 | wrong SSAO and outlines | return the raw normal |
LIGHT_LOOP_BEGIN without a directional pre-loop | a second directional light lights nothing under Forward+ | loop URP_FP_DIRECTIONAL_LIGHTS_COUNT first |
_FORWARD_PLUS, SHADOWS_SCREEN, ComputeScreenPos (deprecated since URP 11) | compile warning, dead shadow branch | _CLUSTER_LIGHT_LOOP, GetMainLight(shadowCoord), GetNormalizedScreenSpaceUV(positionCS) |
shader_feature_local toggled from runtime C# (dissolve "on hit") | variant missing in the player: pink or closest match | material swap, or multi_compile_local; lint_project_keywords |
| a Boolean keyword to skip Shader Graph Alpha Clipping | whole object alpha-tested in every pass, all the time | Allow Material Override (_ALPHATEST_ON keyword) or a second opaque material |
dynamic_branch Type Override on an #if-tested keyword | variant count unchanged | test with if(), declare without a stage suffix |
if (KW) on a _fragment-suffixed keyword | "a known keyword but not declared in this pass" | declare it for all stages |
| stray VolumeProfile assets (samples, tests) | post variants for effects no scene uses | move them out of Assets/; PostProcessingAudit |
| one PSO collection for every API, or none proven | first-use hitches on device | per-API trace, cold vs warm runs |
| Depth Texture off on the URP asset | water turns to solid foam; hidden while SSAO still requests depth | enable on every URP asset that renders it; test with SSAO off |
| feature missing from one renderer | "the effect does nothing" on one quality level | ListFeatures across quality levels |
| After Rendering injection | nothing drawn, back-buffer error | After Rendering Post Processing |
| HDR edge color 4 and up | emissive edge washes to cream | 1 to 1.5, Bloom carries the glow |
| judging cost by instruction count, or half on desktop | "optimized" shader no faster | MeasureFullscreenCost; half on the device |
properties outside UnityPerMaterial | SRP Batcher off, values bleed | one CBUFFER in HLSLINCLUDE |
.graphicsstate files with the cold/warm proof for device captures. To scenario-unity-pipeline-automation: the variant budget and PSO gates for CI. To scenario-unity-mobile and scenario-unity-web: API limits (compute from GLES 3.1, none on GLES 3.0 or WebGL 2), half precision to profile on device, mobile Depth Texture cost, alpha-test cost on tile GPUs.ValidateShaders JSON, contact sheet, probes, funnel, PSO runs, cost table, Verified and Assumed.URP_COMPATIBILITY_MODE only to port, gone in 6.4); AddBlitPass returns a builder (returnBuilder: true); After Rendering always follows the final blit (6.2+)._CLUSTER_LIGHT_LOOP replaced _FORWARD_PLUS (6.1); soft shadows have _LOW/_MEDIUM/_HIGH variants; fog is declared dynamic_branch in URP's Fog.hlsl.EditorGraphicsSettings.Get/SetShaderBuildSettings (the active set; a build profile can override). GraphicsStateCollection is experimental; tracing needs a development player; on Metal CreateGraphicsGraphicsPipelineImpl does not exist. Log Shader Compilation prints Uploaded shader variant to the GPU driver: ....SetShaderUserValue(uint) exists on MeshRenderer and SkinnedMeshRenderer, not Renderer; the shader reads unity_RendererUserValue.references/procedures.md: P1 to P19, copyable code with live test and result.references/expert-notes.md: principles by expert, observed findings, disagreements.references/critique.md: the rubric before calling work done.references/gui-paths.md: the same procedures in the GUI.references/sources.md: sources, credentials, timestamps, revision history.scripts/ut_shaders.py: install, lints, variant and PSO helpers, Shader Graph reader and editor, pixel probes.scripts/AgentKit/Shaders/: ShaderJobs, ShaderLab, RendererFeatureJobs, VariantJobs, PsoJobs, ComputeJobs, GpuCostJobs, ShaderGraphJobs.scripts/Runtime/: AgentFullscreenFeature.cs, AgentPsoProbe.cs (runtime assembly); scripts/Shaders/ (templates).© scenario-labs, 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 27 other files (scripts, references) in skills/game-engines/unity/scenario-unity-shaders of scenario-labs/skills.
Open the folder on GitHubat commit f6f8ab7
Scenario Unity Shaders 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 |
|---|---|---|---|---|---|---|
| Scenario Unity Shaders this skillscenario-labs/skills | 946 | — | ~5.1k | Automated safety check: Pass | MIT | |
| PixijsRSamaium/CanvasEngine | 401 | 2 repos | ~1.6k | Automated safety check: Pass | MIT | |
| New ExperimentTresjs/tres | 3.8k | — | ~782 | Automated safety check: Pass | MIT | |
| Assets Shader List AllIvanMurzak/Unity-MCP | 4.4k | — | ~435 | Automated safety check: Pass | Apache-2.0 | |
| Handle Sdr Tonemap Lutclshortfuse/renodx | 4.5k | — | ~7.3k | Automated safety check: Pass | MIT | |
| Unreal Material and VFX Workflowflopperam/unreal-engine-mcp | 1.1k | — | ~927 | Automated safety check: Pass | None |
RSamaium/CanvasEngine
Use this skill first for ANY PixiJS v8 task; it routes to the right specialized skill for the job.
Tresjs/tres
Create a new experiment in TresJS Lab with all necessary files
IvanMurzak/Unity-MCP
List all shaders available in the project assets and packages, sorted by name.
clshortfuse/renodx
RenoDX HLSL/Slang shader workflow for proven shader-side SDR tonemap, hard clip, LUT, color grade, and HDR bridge changes.
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.
BANANASJIM/rdc-cli
A skill your agent uses when working with RenderDoc capture files (.rdc), analyzing GPU frames, tracing shaders, inspecting draw calls, or running CI assertions against GPU captures.
scenario-labs/skills
A skill your agent uses when drawing or animating with Grease Pencil in Blender 5.x from Python: 2D or 2.5D illustration, frame-by-frame animation, a cutout or part-based 2D character, strokes with…
scenario-labs/skills
A skill your agent uses when grooming hair or fur in Blender with hair curves, such as a character hairstyle, animal fur, procedural fur in geometry nodes, or hair cards and mesh hair for games.
scenario-labs/skills
A skill your agent uses when lighting, rendering or compositing in Blender: light a character, product or hero shot, interior at dusk or night, three-point or motivated lighting, sun and sky, HDRI…
scenario-labs/skills
A skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…
scenario-labs/skills
A skill your agent uses when animating characters or scenes in Godot 4.7: AnimationPlayer clips and RESET, AnimationTree state machines and blend spaces built in code, Mixamo or glTF import, loop…
scenario-labs/skills
A skill your agent uses when adding or fixing sound in Godot 4.7: audio buses and effects, volume sliders, 'too many sounds', combat audio with hundreds of enemies, sounds clipping or distorting, 3D…
Categories
A skill your agent uses when a Unity 6.3 URP task involves shaders: hand-written HLSL, Shader Graph water, toon, dissolve or outline, Custom Function nodes, a renderer feature or full-screen effect…. Scenario Unity Shaders is an agent skill from scenario-labs/skills.3 URP task involves shaders: hand-written HLSL, Shader Graph water, toon, dissolve or outline, Custom Function nodes, a renderer feature or full-screen effect on Render Graph, compute shaders, shader variants, keywords, stripping, Shader Build Settings, PSO warm-up, or shader cost; or when a material turns pink or invisible, casts no shadow, ignores extra lights under Forward+, an effect 'does nothing', the game stutters the first time something appears, or builds bloat with variants.
Scenario Unity Shaders fits situations like: A Unity 6.3 URP task involves shaders: hand-written HLSL; shader Graph water; custom Function nodes; A renderer feature.
Run `npx skills add scenario-labs/skills --skill scenario-unity-shaders -a claude-code`. Or copy the skill folder (skills/game-engines/unity/scenario-unity-shaders in scenario-labs/skills) into .claude/skills/scenario-unity-shaders in your project. Claude Code loads it when a task matches its description.
Run `npx skills add scenario-labs/skills --skill scenario-unity-shaders -a codex`. Or copy the skill folder (skills/game-engines/unity/scenario-unity-shaders in scenario-labs/skills) into .agents/skills/scenario-unity-shaders 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 scenario-labs/skills --skill scenario-unity-shaders -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scenario-unity-shaders, .gemini/skills/scenario-unity-shaders, .github/skills/scenario-unity-shaders and .opencode/skills/scenario-unity-shaders in your project.
Going by SKILL.md and its folder, Scenario Unity Shaders needs C# for the scripts in its folder and the command-line tools its instructions call (npx). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. 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.
Scenario Unity Shaders is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.1k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 31k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Scenario Unity Shaders: Pixijs (RSamaium/CanvasEngine, 401 stars), New Experiment (Tresjs/tres, 3.8k stars), Assets Shader List All (IvanMurzak/Unity-MCP, 4.4k stars) and Handle Sdr Tonemap Lut (clshortfuse/renodx, 4.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
scenario-labs (a GitHub organization) maintains it in scenario-labs/skills, which has 946 GitHub stars. The repository holds 146 skills in this directory. The repository was last updated on October 10, 2026.
Source: scenario-labs/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.