https://lodev.org/cgtutor/raycasting.html

https://github.com/365kim/raycasting_tutorial/blob/master/3_untextured_raycaster.md