fix set-shader function
add shader