Gambas Projection Engine



Gambas Projection Engine is a 2.5D game engine project by Graham Lawrence Wilson that provides grid-based simulated three dimensional spaces ala games like Dungeon Master, as well as more experimental pseudo-3D effects such as graphical scaling.

2-Step


2-Step was a limited first person projection engine first envisioned by Graham Lawrence Wilson in the summer of 2005. At that time Piga Software, had yet to acquire the full version of Game Maker 6.1 and he was frustrated by the fact that the basic 3D abilities of Game Maker were not allowed to be used in the shareware version. As a sideline around this, he decided to try and create a program, however limited, to emulate it. The result was a Game Maker engine that draws a cramp room in which the player can step forward, step backward, jump, crouch, and interact with any object within in the cramped, short corridor.

This was done by drawing four backgrounds in a first person perspective that simulated the player's two steps forward and backward, as well as jumping and crouching, and then switching the background when the player pressed the relevant key. He had trouble doing this with the background settings of a Game Maker room, but then after a coder epiphany he figured that he would just create an object to the draw the world. After this he made a short open ended demonstration game called Revenge which featured use of this engine, depicting an enraged space bounty hunter (ala Bobba Fett) charging his way through the corridors of an alien ship to avenge the death of his father. The artificial intelligence had aliens with both one shot and rapid fire weapons, and it was vital once each room opened to do unto them before they killed the player. There were also light switches, various collectibles, and other items.

Several versions of this engine were played around with, including ones for Game Maker 5 (pictured here), QBasic 4.5 (done in ASCII art), and lastly in Gambas. It carried on from the very basic static 3D renderings Piga had done in Visual Basic by allowing for the world to be redrawn as needed and objects that could be manipulated.

Projection Engine
Work on the modern incarnation of the engine began in June 2015, abandoning a focus on graphical scaling as the primary renderer and instead taking inspiration from grid-based dungeon crawler games. Most notably for Wilson was the QBasic game The Legend of Lith II, which has served as a model alongside the uncompleted GWiz. Rather than just following the classic grid based formula however, which usually featured turn-based combat, the Projection Engine is to use graphical scaling and other tricks to allow for limited real-time game-play.