Scenario Agent Skills is a collection of instructions that teaches AI coding agents to create images, video, audio, textures, skyboxes, and 3D assets through the Scenario MCP server, an interface to Scenario’s generation tools and custom-trained models. It serves game, entertainment, marketing, and other creative work, and also includes workflows for digital content creation software and game engines. The catalogue entries are these skills, along with plugins, commands, agents, instructions, settings, and hooks for using Scenario or driving supported creative applications.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add scenario-labs/skills --skill scenario-unity-shadersgit clone --depth 1 https://github.com/scenario-labs/skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/scenario-labs/skills/scenario-unity-shaders)<a href="https://agentmods.dev/skills/scenario-labs/skills/scenario-unity-shaders"><img src="https://agentmods.dev/badge/skills/scenario-labs/skills/scenario-unity-shaders/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/scenario-labs/skills/scenario-unity-shaders"><img src="https://agentmods.dev/badge/skills/scenario-labs/skills/scenario-unity-shaders.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00116 | $0.04454 |
| Opus 5.5 | $0.00046 | $0.01782 |
| Sonnet 5.5 | $0.00023 | $0.00891 |
| Haiku 4.5 | $0.00012 | $0.00445 |
Grade A, and why
scenario-unity-shaders scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 20d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 116 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Unity shaders (technical artist, shading)
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/).
Stance (the expert delta)
- Text first, graphs by template. Shader Graph has no loops and almost no lighting nodes, so lights and loops live in HLSL (Daniel Ilett, F8bAI6dIrto [00:07:13]); its one advantage is generated depth and shadow passes (bH--RU6qyTw [00:38:24]), which
AgentPasses.hlslgives 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 1into all 8 generated passes, and no Boolean keyword removes it (installedUniversalTarget.cs, observed). - Every pass must agree. Displacement and
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'snormal * 0.5 + 0.5example reads back wrong in SSAO and outlines (observed). - Read the installed pipeline, not the tutorial. Copy keywords from the installed
Lit.shader(Ilett [00:14:51];ut_shaders.urp_lit_keywords()): 6.3 has_CLUSTER_LIGHT_LOOPand four soft shadow variants.LIGHT_LOOP_BEGINskips directional lights, so a custom loop needs a directional pre-loop under Forward+; Unity's own Custom Lighting sample lacks it (observed). - Variants are a budget counted after stripping.
shader_featurefor material toggles,multi_compileonly for runtime C# toggles,dynamic_branchtested withif, never#if(6.3 Manual). Strict Shader Variant Matching before stripping, then the funnel in the build log (Carotenuto, Unity blog 2024). Ashader_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 adynamic_branchoverride is silently ignored for#if-tested keywords, URP's soft shadow and SSAO sets included (observed). - First use is proven warm. Trace one
GraphicsStateCollectionper graphics API and platform in a development player, warm it behind the loading screen, and show gameplay frames with zeroShader.CreateGPUProgramsamples and zero logged uploads (6.3 Manual; observed 14 to 0 on Metal). - Cost is GPU time, not instruction count. Loops count at max trip, float4 costs about 4x float, transcendentals cost many cycles (Ben Cloward, E82XxlXMJs4 [00:15:44]). Measured here: 64
sinon 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 compileshalfasfloat. - Render Graph shape.
RecordRenderGraphdeclares, never records; blit once into a new texture thenresourceData.cameraColor = destination; gate inAddRenderPasses; refuse the back buffer (6.3 docs; Unity dither sample, U8PygjYAF7A [00:09:06] [00:10:10]). - One scalar field, one threshold, two colors; look and measure. Toon, water, dissolve, outline and dither threshold a 0..1 value (visual digest); the water's depth mask also calms its shore normals (gRq-IdShxpU [00:06:12]). Offset an emissive edge from the clip test (Brackeys, taMp1g1pBeE [00:05:31]). Output intermediates as colors (Freya [01:57:25]), then assert pixels at projected probes.
What ships with it
26 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/critique.md 12 KB
- references/expert-notes.md 25 KB
- references/gui-paths.md 18 KB
- references/procedures.md 44 KB
- references/sources.md 22 KB
- scripts/AgentKit/Shaders/ComputeJobs.cs 6.8 KB
- scripts/AgentKit/Shaders/GpuCostJobs.cs 9.5 KB
- scripts/AgentKit/Shaders/PsoJobs.cs 9.6 KB
- scripts/AgentKit/Shaders/RendererFeatureJobs.cs 11 KB
- scripts/AgentKit/Shaders/ShaderGraphJobs.cs 9.1 KB
- scripts/AgentKit/Shaders/ShaderJobs.cs 26 KB
- scripts/AgentKit/Shaders/ShaderLab.cs 24 KB
- scripts/AgentKit/Shaders/VariantJobs.cs 24 KB
- scripts/Runtime/AgentFullscreenFeature.cs 6.1 KB
- scripts/Runtime/AgentPsoProbe.cs 13 KB
- scripts/Shaders/AgentCompute.compute 1.8 KB
- scripts/Shaders/AgentCustomLighting.hlsl 6.0 KB
- scripts/Shaders/AgentDissolve.shader 9.2 KB
- scripts/Shaders/AgentEdgeOutline.shader 3.9 KB
- scripts/Shaders/AgentGrayscale.shader 1.5 KB
- scripts/Shaders/AgentLit.shader 8.9 KB
- scripts/Shaders/AgentNoise.hlsl 3.1 KB
- scripts/Shaders/AgentPasses.hlsl 5.3 KB
- scripts/Shaders/AgentToon.shader 9.6 KB
- scripts/Shaders/AgentWater.shader 9.2 KB
- scripts/ut_shaders.py 55 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 20d ago First seen · 116 lines · 116 tokens per session scan A bf0cf46c1e6b
scenario-unity-shaders is a skill published in the GitHub repository scenario-labs/skills (1,034 stars, last pushed today), licensed MIT. It adds 116 tokens to every session and 4,454 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-27.
Other skills, from other repositories
motion
Reconstruct a skeleton from calibrated mesh projections and sequential VLM joint annotations, then fit joints and skin weights. Generate motion from joint-position trajectories, rhythm and contact constraints through IK; refine bone orientation against the action, then export, retarget and validate on the target mesh.
3d_object
Judge whether a generated mesh is fit to ship in a browser game, from the same rendered sheet the orientation review uses.
3d_scene
Choose how to build a 3dscene asset. Do not default to one pipeline for every task: what the user specified about the scene's appearance matters more than the scene type, and generative reconstruction is the least stable route here.
image
Use this Skill when a game plan needs a single-subject concept image, a character reference cleaned for image-to-3D, or a front-facing transparent T-pose image for downstream character reconstruction. T-pose generation is an image-generation and image-editing task; it is not a separate asset category.
audio
Use this Skill when a game plan requires dialogue, voice lines, sound effects, foley, ambience, or other offline WAV assets. This is asset generation, not a runtime audio-playback contract; use the selected engine context after an asset has passed review.
game-cg-director
Convert game CG intent and optional media references into validated, model-specific directing envelopes for opening, cutscene, ultimate, or promo clips. Use for standalone CG prompt direction or as a child capability of a game-generation Harness. Supports T2VA/text-only, I2VA/first-frame image…