Completely reworked and somewhat optimised using @Griffpatch 's method instead of my own. Improvements to Raycasting 2 -Made each ray increase in size overtime to reduce the empty space between rays. -Changed the order to shadows then light for a cleaner look.