Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Universal Render Pipeline configuration skill for Unity, including custom shaders, lighting setup, post-processing effects, and render feature development.
.claude/skills/a5c-ai-unity-urp/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-18 | ✓→✗ | ▼ Worse | -19% | 0% |
| case-02 | ✓→✓ | = Same ✓ | 7% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 47% | 0% |
| case-04 | ✓→✓ | = Same ✓ | 113% | 0% |
| case-05 | ✓→✓ | = Same ✓ | 55% | 0% |
Comprehensive Universal Render Pipeline configuration and customization for Unity projects.
This skill provides capabilities for configuring and extending Unity's Universal Render Pipeline, including shader development, lighting configuration, post-processing setup, and custom render feature implementation.
1. Create new Shader Graph (Create > Shader Graph > URP > Lit Shader Graph)
2. Configure surface options (opaque/transparent)
3. Add nodes for desired effect
4. Connect to master stack outputs
5. Save and apply to materialcsharppublic class OutlineRenderFeature : ScriptableRendererFeature { [System.Serializable] public class Settings { public RenderPassEvent renderPassEvent = RenderPassEvent.AfterRenderingOpaques; public Material outlineMaterial; } public Settings settings = new Settings(); private OutlineRenderPass renderPass; public override void Create() { renderPass = new OutlineRenderPass(settings); } public override void AddRenderPasses(ScriptableRenderer renderer, ref RenderingData renderingData) { renderer.EnqueuePass(renderPass); } }
javascriptconst urpSetupTask = defineTask({ name: 'urp-configuration', description: 'Configure URP settings', inputs: { qualityTier: { type: 'string', required: true }, features: { type: 'array', required: true } }, async run(inputs, taskCtx) { return { kind: 'skill', title: 'Configure URP pipeline', skill: { name: 'unity-urp', context: { operation: 'configure_pipeline', qualityTier: inputs.qualityTier, features: inputs.features } } }; } });
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 19,671 | 29,566 | +50% | 1 | 1 | 0% | 3,078 | 2,522 | -18% | 0 | 0 | — |
case-02 | pass→pass | 18,367 | 14,516 | -21% | 1 | 1 | 0% | 2,866 | 3,075 | +7% | 0 | 0 | — |
case-03 | pass→pass | 13,678 | 14,414 | +5% | 1 | 1 | 0% | 2,217 | 3,255 | +47% | 0 | 0 | — |
case-04 | pass→pass | 6,274 | 6,325 | +1% | 1 | 1 | 0% | 882 | 1,881 | +113% | 0 | 0 | — |
case-05 | pass→pass | 7,088 | 4,613 | -35% | 1 | 1 | 0% | 952 | 1,471 | +55% | 0 | 0 | — |
case-06 | pass→pass | 10,987 | 11,010 | +0% | 1 | 1 | 0% | 1,741 | 2,785 | +60% | 0 | 0 | — |
case-07 | pass→pass | 21,197 | 17,687 | -17% | 1 | 1 | 0% | 3,189 | 3,464 | +9% | 0 | 0 | — |
case-08 | pass→pass | 4,582 | 5,374 | +17% | 1 | 1 | 0% | 762 | 1,562 | +105% | 0 | 0 | — |
case-09 | pass→pass | 7,083 | 2,534 | -64% | 1 | 1 | 0% | 1,110 | 1,036 | -7% | 0 | 0 | — |
case-10 | pass→pass | 17,477 | 19,342 | +11% | 1 | 1 | 0% | 2,832 | 4,085 | +44% | 0 | 0 | — |
case-11 | pass→pass | 19,224 | 18,003 | -6% | 1 | 1 | 0% | 2,697 | 3,526 | +31% | 0 | 0 | — |
case-12 | pass→pass | 7,145 | 5,907 | -17% | 1 | 1 | 0% | 1,126 | 1,752 | +56% | 0 | 0 | — |
case-13 | pass→pass | 15,595 | 9,967 | -36% | 1 | 1 | 0% | 2,405 | 2,675 | +11% | 0 | 0 | — |
case-14 | pass→pass | 12,360 | 16,611 | +34% | 1 | 1 | 0% | 1,764 | 2,854 | +62% | 0 | 0 | — |
case-15 | pass→pass | 19,002 | 20,405 | +7% | 1 | 1 | 0% | 3,038 | 4,371 | +44% | 0 | 0 | — |
case-16 | pass→pass | 11,981 | 12,987 | +8% | 1 | 1 | 0% | 2,299 | 2,712 | +18% | 0 | 0 | — |
case-17 | pass→pass | 16,835 | 16,897 | +0% | 1 | 1 | 0% | 2,416 | 3,151 | +30% | 0 | 0 | — |
case-18 | pass→fail | 13,374 | 31,684 | +137% | 1 | 1 | 0% | 2,395 | 1,951 | -19% | 0 | 0 | — |
case-19 | pass→pass | 22,130 | 19,375 | -12% | 1 | 1 | 0% | 3,011 | 3,382 | +12% | 0 | 0 | — |
case-20 | pass→pass | 11,799 | 12,050 | +2% | 1 | 1 | 0% | 2,004 | 2,478 | +24% | 0 | 0 | — |
case-21 | pass→pass | 12,313 | 10,435 | -15% | 1 | 1 | 0% | 1,945 | 2,448 | +26% | 0 | 0 | — |
case-22 | pass→pass | 15,448 | 13,953 | -10% | 1 | 1 | 0% | 2,258 | 2,722 | +21% | 0 | 0 | — |
case-23 | pass→pass | 11,745 | 12,460 | +6% | 1 | 1 | 0% | 1,811 | 2,851 | +57% | 0 | 0 | — |
case-24 | pass→pass | 14,836 | 11,848 | -20% | 1 | 1 | 0% | 2,170 | 2,764 | +27% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 24 cases were attempted, and 23 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of -4 percentage points is the difference between those two pass rates over the 23 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Other measured skills in the registry, with their headline benchmark lift.