Vexal

Simple OpenGL Game Engine

Simple OpenGL Engine - Description

This project was my first transition from 2D game programming to 3D and started when my dad lent me his copy of the OpenGL Redbook. It was also transition from Java to C++. Since this project, I have not used Java at all unless forced to.

This project was a very simple 3D game engine. It was based on a parser I wrote to import model files from 3DS Max exported into ASCII files and then create a vertex model in the engine.

A model file would be designated to be parsed into a height map. The program would then generate a 2D array of height values for every point in the world based on the highest point on the model at that location. This allowed the user to develop levels for the game using 3DS Max.

The engine supported very simple rigid-body physics consisting of sphere-to-sphere collision detection and response, and sphere-to-heightmap collision detection and response, as well as assigning force fields such as gravity to objects. Balls could bounce around the world and off each other, but that was the limit of the physics system.

Players were able to walk around the world using the heightmap values directly instead of checking collision.

The renderer for the engine used OpenGL's fixed-function pipeline (GlBegin(), GlVertex(), etc). The input was handled using DirectInput 8, and Win32 was used for windowing.

2006 - 2007 Senior year of highschool.

Simple OpenGL Engine Images

Particle fountain in OpenGL
This image is from a voxel version of the engine, but the (lack of) rendering quality is essentially the same.