fixed a bug that doesn't work shadow map correctly (rewrote base effect)