small modify
a lot of modify
add shader file