make shader module better (again)