ray shooting algorithm
ray shooting algorithm