An open source Java – yes, serious – raycasting game engine, abandoned, but you can find it on GitHub again. I love to optimize and Java gave me a challenge here. I followed a C tutorial back then to get the basic math down (which I was not comfortable with back then) and was also inspired by a game by Notch.
I optimized the hell out of the engine which was able to display a tile-map of textured 3D CPU-raycasted blocks. Using threading and mainly coding tricks I got the thing from iirc something lower than 20 fps to over 120 fps. Which says nothing, because I don’t remember the specs of the Notebook it ran on… or the resolution… or anything.
It had an editor though, in which you were able to build tile maps and add custom tiles, with an orthographic visualization of the tile etc. And I learnt what mip-maps are and how to generate them, because the artifacts were just too horrible.
My brother back then was using some very basic ray casting game engine to make astoundingly cool little games and I hoped to build something nicer for him, tailored to his needs. I must have gotten caught up in premature optimizations…