Cache - only bind uniforms and attributes when needed