fixed shader instantiation to happen only on initialization