adding shader switching