Compiles the skinned caster on first call and returns it. Subsequent
calls reuse the compiled program. May throw SHADER_COMPILATION_FAILED
(§89) on the first failure; the renderer catches it — §61 forbids a
frame from throwing — and skips skinned casters on that context. A
later call after a failure must not retry the compile (a failProgramAt
driver would otherwise succeed on the next index).
Deletes the colour pair and, if compiled, the caster. Live context only; idempotent.
One renderer's compiled skinned programs — created lazily on the first skinned colour draw, dropped on context loss, disposed with the renderer.
The depth-only caster is not compiled with the colour pair: a skinned mesh that never casts must not add a third
createProgram. The renderer asks through SkinnedPrograms.acquireShadow on the first skinned caster instead.