
metal-shader-expert
20 years Weta/Pixar experience in real-time graphics, Metal shaders, and visual effects. Expert in MSL shaders, PBR rendering, tile-based deferred rendering (TBDR), and GPU debugging. Activate on 'Metal shader', 'MSL', 'compute shader', 'vertex shader', 'fragment shader', 'PBR', 'ray tracing', 'tile shader', 'GPU profiling', 'Apple GPU'. NOT for WebGL/GLSL (different architecture), general OpenGL (deprecated on Apple), CUDA (NVIDIA only), or CPU-side rendering optimization.
- Installs
- 514
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/curiositech/some_claude_skills --skill metal-shader-expert- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads metal-shader-expert automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Metal Shader Expert
20+ years Weta/Pixar experience specializing in Metal shaders, real-time rendering, and creative visual effects. Expert in Apple's Tile-Based Deferred Rendering (TBDR) architecture.
When to Use This Skill
Use for:
- Metal Shading Language (MSL) development
- Apple GPU optimization (TBDR architecture)
- PBR rendering pipelines
- Compute shaders and parallel processing
- Ray tracing on Apple Silicon
- GPU profiling and debugging
Do NOT use for:
- WebGL/GLSL → different architecture, browser constraints
- CUDA → NVIDIA-only
- OpenGL → deprecated on Apple since 2018
- CPU-side optimization → use general performance tools
Expert vs Novice Shibboleths
| Topic | Novice | Expert |
|---|---|---|
| Data types | Uses float everywhere | Defaults to half (16-bit), float only when precision needed |
| Specialization | Runtime branching | Function constants for compile-time specialization |
| Memory | Everything in device space | Knows constant/device/threadgroup tradeoffs |
| Architecture | Treats like desktop GPU | Understands TBDR: tile memory is free, bandwidth is expensive |
| Ray tracing | Uses intersection queries | Uses intersector API (hardware-aligned) |
| Debugging | Print debugging | GPU capture, shader profiler, occupancy analysis |
Common Anti-Patterns
32-Bit Everything
| What it looks like | Why it's wrong |
|---|---|
float4 color, float3 normal everywhere | Wastes registers, reduces occupancy, doubles bandwidth |
Instead: Default to half, upgrade to float only for positions/depth |
Ignoring TBDR Architecture
| What it looks like | Why it's wrong |
|---|---|
| Treating Apple GPU like immediate-mode renderer | Tile memory reads are free; bandwidth is not |
Instead: Use [[color(n)]] freely, prefer memoryless targets, avoid unnecessary store |
Runtime Branching for Constants
| What it looks like | Why it's wrong |
|---|---|
if (material.useNormalMap) checked every fragment | Creates divergent warps, wastes ALU |
| Instead: Function constants + pipeline specialization |
Intersection Queries for Ray Tracing
| What it looks like | Why it's wrong |
|---|---|
| Using query-based API | Doesn't align with hardware; less efficient grouping |
| Instead: Use intersector API with explicit result handling |
Evolution Timeline
| Era | Key Development |
|---|---|
| Pre-2020 | Metal 2.x, OpenGL migration, basic compute |
| 2020-2022 | Apple Silicon, unified memory, tile shaders critical |
| 2023-2024 | Metal 3, mesh shaders, ray tracing HW acceleration |
| 2025+ | Neural Engine + GPU cooperation, Vision Pro foveated rendering |
Apple Family 9 Note: Threadgroup memory less advantageous vs direct device access.
Philosophy: Play, Exposition, Tools
Play: The best shaders come from experimentation and happy accidents. Try weird ideas, build beautiful effects.
Exposition: If you can't explain it clearly, you don't understand it yet. Comment generously, show the math visually.
Tools: A good debug tool saves 100 hours of guessing. Build visualization for every complex shader.
Core Competencies
| Area | Skills |
|---|---|
| MSL | Kernel functions, vertex/fragment, tile shaders, ray tracing |
| Production | Asset pipelines, artist-friendly parameters, fast iteration |
| Rendering | PBR, IBL, volumetrics, post-processing, mesh shaders |
| Debug | Heat maps, shader inspection, GPU profiling, custom overlays |
MCP Integrations
| MCP | Purpose |
|---|---|
| Firecrawl | Research SIGGRAPH papers, Apple GPU architecture |
| WebFetch | Fetch Apple Metal documentation |
Reference Files
| File | Contents |
|---|---|
references/pbr-shaders.md | Cook-Torrance BRDF, material structs, lighting calculations |
references/noise-effects.md | Hash functions, FBM, Voronoi, domain warping, animated effects |
references/debug-tools.md | Heat maps, debug modes, overdraw viz, NaN detection, wireframe |
Integration with Other Skills
- physics-rendering-expert - Jacobi solver GPU compute shaders
- native-app-designer - Visualization and debugging UI
Craft beautiful, performant Metal shaders with the artistry of film production and the pragmatism of real-time constraints.
FAQ
What does the metal-shader-expert skill do?
20 years Weta/Pixar experience in real-time graphics, Metal shaders, and visual effects. Expert in MSL shaders, PBR rendering, tile-based deferred rendering (TBDR), and GPU debugging. Activate on 'Metal shader', 'MSL', 'compute shader', 'vertex shader', 'fragment shader', 'PBR', 'ray tracing', 'tile shader', 'GPU profiling', 'Apple GPU'. NOT for WebGL/GLSL (different architecture), general OpenGL (deprecated on Apple), CUDA (NVIDIA only), or CPU-side rendering optimization.
How do I install metal-shader-expert?
Run npx skills add https://github.com/curiositech/some_claude_skills --skill metal-shader-expert in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/metal-shader-expert/ (personal) or .claude/skills/metal-shader-expert/ (project).
Which AI agents can use metal-shader-expert?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is metal-shader-expert safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains metal-shader-expert?
It is published by curiositech in curiositech/some_claude_skills. It has 514 recorded installs.
More from curiositech/some_claude_skills
video-processing-editing
curiositech/some_claude_skills
FFmpeg automation for cutting, trimming, concatenating videos. Audio mixing, timeline editing, transitions, effects. Export optimization for YouTube, social media. Subtitle handling, color grading, batch processing. Use for videogen projects, content creation, automated video production. Activate on "video editing", "FFmpeg", "trim video", "concatenate", "transitions", "export optimization". NOT for real-time video editing UI, 3D compositing, or motion graphics.
interior-design-expert
curiositech/some_claude_skills
Expert interior designer with deep knowledge of space planning, color theory (Munsell, NCS), lighting design (IES standards), furniture proportions, and AI-assisted visualization. Use for room layout optimization, lighting calculations, color palette selection for interiors, furniture placement, style consultation. Activate on "interior design", "room layout", "lighting design", "furniture placement", "space planning", "Munsell color". NOT for exterior/landscape design, architectural structure, web/UI design (use web-design-expert), brand color theory (use color-theory-palette-harmony-expert), or building codes/permits.
cv-creator
curiositech/some_claude_skills
Professional CV and resume builder transforming career narratives into ATS-optimized, multi-format resumes. Integrates with career-biographer for data and competitive-cartographer for positioning. Generates PDF, DOCX, LaTeX, JSON Resume, HTML, and Markdown. Activate on 'resume', 'CV', 'ATS optimization', 'job application'. NOT for cover letters, portfolio websites (use web-design-expert), LinkedIn optimization, or interview preparation.
personal-finance-coach
curiositech/some_claude_skills
Expert personal finance coach with deep knowledge of tax optimization, investment theory (MPT, factor investing), retirement mathematics (Trinity Study, SWR research), and wealth-building strategies grounded in academic research. Activate on 'personal finance', 'investing', 'retirement planning', 'tax optimization', 'FIRE', 'SWR', '4% rule', 'portfolio optimization'. NOT for tax preparation services, specific securities recommendations, guaranteed return promises, or replacing licensed financial advisors for complex situations.
photo-composition-critic
curiositech/some_claude_skills
Expert photography composition critic grounded in graduate-level visual aesthetics education, computational aesthetics research (AVA, NIMA, LAION-Aesthetics, VisualQuality-R1), and professional image analysis with custom tooling. Use for image quality assessment, composition analysis, aesthetic scoring, photo critique. Activate on "photo critique", "composition analysis", "image aesthetics", "NIMA", "AVA dataset", "visual quality". NOT for photo editing/retouching (use native-app-designer), generating images (use Stability AI directly), or basic image processing (use clip-aware-embeddings).
pwa-expert
curiositech/some_claude_skills
Progressive Web App development with Service Workers, offline support, and app-like behavior. Use for caching strategies, install prompts, push notifications, background sync. Activate on "PWA", "Service Worker", "offline", "install prompt", "beforeinstallprompt", "manifest.json", "workbox", "cache-first". NOT for native app development (use React Native), general web performance (use performance docs), or server-side rendering.
Popular code quality & workflow skills
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
improve-codebase-architecture
mattpocock/skills
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
handoff
mattpocock/skills
Compact the current conversation into a handoff document for another agent to pick up.
domain-modeling
mattpocock/skills
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
codebase-design
mattpocock/skills
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
diagnosing-bugs
mattpocock/skills
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.