added shaders and stuff