merge
merge
clean up and shader optimization