allow custom materials in WebGlRenderer (custom shader data and custom uniform refresh)