One renderer's node-program cache — created lazily on the renderer's first
node-material draw, dropped on context loss, disposed with the renderer.
Programs compile per distinct graph, on first use, and a graph whose
compile failed is latched null on this context (asked once, not once per
frame).
One renderer's node-program cache — created lazily on the renderer's first node-material draw, dropped on context loss, disposed with the renderer. Programs compile per distinct graph, on first use, and a graph whose compile failed is latched
nullon this context (asked once, not once per frame).