Loading...
Loading...
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.
npx skill4agent add erichowens/some_claude_skills metal-shader-expert| Topic | Novice | Expert |
|---|---|---|
| Data types | Uses | Defaults to |
| 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 |
| What it looks like | Why it's wrong |
|---|---|
| Wastes registers, reduces occupancy, doubles bandwidth |
Instead: Default to |
| 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 |
| What it looks like | Why it's wrong |
|---|---|
| Creates divergent warps, wastes ALU |
| Instead: Function constants + pipeline specialization |
| 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 |
| 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 |
| 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 | Purpose |
|---|---|
| Firecrawl | Research SIGGRAPH papers, Apple GPU architecture |
| WebFetch | Fetch Apple Metal documentation |
| File | Contents |
|---|---|
| Cook-Torrance BRDF, material structs, lighting calculations |
| Hash functions, FBM, Voronoi, domain warping, animated effects |
| Heat maps, debug modes, overdraw viz, NaN detection, wireframe |