Pseudo 3D Graphics Engine! [v1] @s0lly
Pseudo 3D Graphics Engine! [v1]  @s0lly
Uploaded February 2019 | Updated September 2026, 2 hours ago
I'm pretty excited about this project! My intention here is to create a new game in a pseudo 3D setting. I'm going to build up the graphics engine before working on the game, so this series will be focusing purely on the graphical side of things first before moving on to other game elements. As you can tell by the initial architectural choices, an Mayan / Aztec setting is likely.

So, what do I mean by Pseudo 3D game engine?

Well, firstly, the graphics are generated by transforming a simple 2D array of object coordinates into a fake 3D view. It doesn't use 3D mathematics at all, although some of those concepts have made their way across to how I've implemented this design. In fact, I think this is quite a cool way to get used to thinking about 3D maths before actually diving in properly.

The obects in this world can (currently) only be rectangular walls or simple sprites. This type of design is very much the same as the ol' classic Wolf 3D, which I thought added quite a nice retro vibe to the game.

The engine also fakes the sky and ground drawing using a very simple algorithm that takes up the grand total of 30 lines of code each. Very simple design.

One interesting feature of this video: I've used the "map" directly from my Dungeons and Flagons game (youtu.be/tGRSpyUTAew) and loaded it into the application (with the pyramid being a nice additional touch). It landed up being a very interesting way to visual my 2D games - something I might use in different ways in the future.

The inspiration to create this engine came from the following videos from Javidx9:
Pseudo 3D Planes: youtu.be/ybLZyY655iY
Pseudo 3D FPS Engine: youtu.be/xW8skO7MFYw

However, I've used quite different code to what he used - e.g. I don't raycast here at all - and have so far added a whole bunch of additional features that I think are really cool (e.g. the atmospheric effect to differentiate for distance).

A lot of the optimisations I thought of were inspired from Chili's Advanced C++ and 3D Fundamentals courses, in particular the line equations:
Advanced series: youtube.com/playlist?list=PLqCJpWy5Fohd6Hg5BW8eAjo5SzQQYl43S
3D Fundamentals: youtube.com/playlist?list=PLqCJpWy5Fohe8ucwhksiv9hTF5sfid8lA

The approaches that I am using seem to be pretty darn efficient and have this game running at a stable 60fps with quite a large game world setting.

Next, I want to add in sprite graphics that change based on the direction the object is facing (e.g. see a "side on" sprite if the associated object is facing to the side from your vantage point).

And, of course, animations!

Please comment if you have any ideas that you'd like to see me try and implement!
Pseudo 3D Graphics Engine! [v1]First Games in C++: Dungeons and Flagons (v0.78) - Shadow Casting First Attempt!Game Engine 17: Testing SpaceshipsCoding Up a Sidewinder Maze (Maze Livestream Series)Maze Visualizations: 5) Maze Variations and ConnectionsRaytracing in Excel - Improved!! (via a C XLL)2D N-Body Simulation in Excel!Mars Hologram (Using a Particle System)First Games in C++: AstroVoidsGame Engine 12: BRDF, Spotlights, Ship ControlsExcel with s0lly: 3. Simple AutomationFirst Games in C++: Krazy Karts (v0.73) - Improved AI
s0lly |

Pseudo 3D Graphics Engine! [v1]

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER