Hey all. Today I want to show off something that I’ve been wanting to create for years, which is a 3D game engine with textures that is fully rendered on to a GUI.
This is my fast and yet pretty looking 2D Raycast Renderer entirely made within a GUI.
This engine works a lot like older 3D games in the mid 90s (such as Wolfenstein 3D and DOOM)
To cut it short, a 2D Raycast Renderer is the projection of a 2D map into a “third” dimension. From the Player’s position, a bunch of rays are cast with incrementing change of angle (based on the FOV). The ray travels along the 2D map and returns the distance to the first “wall” it hits. For each ray, a thin rectangle is drawn, with height being determined by the returned raycast distance.
Here’s a simple open sourced version of the renderer without the advanced graphics and textures:
I’d love to hear your thoughts and feedback on this renderer. Thank you!