many re organisation in Sprite and shader