dynamic shaders! will optimize later with File watchers