WARNING: this will run pretty slow if you are using phone or a Chromebook (or any device with a small amount of RAM)
[Mouse Move] / [Mobile Touch] = Look around
[WSAD] / [Arrow Keys] = Move
[Space] = "Jump" (not really but it looks like it; there are no real physics yet, just easing the camera's Y)
[Z/Right Click] = Zoom in / out
[F] = Fullscreen
Trying to use these to find ray-tri intersections and tri-tri intersections:
https://en.wikipedia.org/wiki/M%C3%B6ller%E2%80%93Trumbore_intersection_algorithm
https://www.scratchapixel.com/lessons/3d-basic-rendering/ray-tracing-rendering-a-triangle/moller-trumbore-ray-triangle-intersection.html
https://fileadmin.cs.lth.se/cs/Personal/Tomas_Akenine-Moller/code/opttritri.txt
Trying to use these to get the painter's algorithm to work even for 3 overlapping triangles:
https://homepages.math.uic.edu/~jan/mcs481/binaryspacepartitions.pdf
https://c3d.libretexts.org/CalcPlot3D/CalcPlot3D-Help/section-viewsettingsmenu.html#:~:text=Any%20faces%20that%20are%20partly%20in%20front,faces%20and%20the%20back%20collection%20of%20faces
https://en.wikipedia.org/wiki/Newell%27s_algorithm
https://www.youtube.com/watch?v=YT8ya4H-Z8Q
https://www.opengl.org/archives/resources/code/samples/bspfaq/index.html
https://www.cs.uic.edu/~jbell/CourseNotes/ComputerGraphics/VisibleSurfaces.html
https://www.gorillasun.de/blog/an-algorithm-for-polygon-intersections/