Tuesday, January 31, 2012

Radiant Star Engine - Post 1

For a couple months I have been working on a game engine written entirely in C++. It uses the SDL and OpenGL APIs for graphics, input, etc. The engine is very portable due to these APIs. I will most likely have builds supporting Macs and Unix. It should easily port to many other platforms as well.

Features

  • Text Rendering from a sprite sheet.
    • 2D
    • 3D
  • Menu system.
    • Loads a special file format defining where each menu button is on the screen, what images it uses, and what it does when pressed.
  • HUD system.
    • Easy to use objects named "HUDElements" to display images and text.
  • Particle system.
    • Fully editable particle effects.
  • Texture Loading (using SDL_Image) and management.
    • Supports .png, .jpg, .bmp, .tga, .pcx, .tiff, .gif, and .xpm image files.
    • Automatic cleaning of all textures upon program exit.
    • Resource pooling using temporary files.
  • 3d model loading and rendering.
    • As of now only supports .obj model files and .mtl material files.
  • Special Effects
    • Lens flare (2d)

Features currently on the TO-DO list:
  • Occlusion Culling with Occlusion Queries
    • Increases performance.
  • Lens flare (3d)
    • Render a lens flare based on a 3d point.
  • Sprite bill-boarding
    • Aligns particles to always face the camera (user).
  • Normal mapping
    • Greatly increases detail on models.
  • Advanced Camera Functions

Many more features are planned.



Here is a video and some pictures:

1/31/2012
Video showing the 3d models, 3d text rendering, and particles.



1/6/2012
Early implementation of the menu system. This also shows a tileable hud element (shell casing), a particle system in the background, and 2d text rendering.

Game Engine in Development

1/15/2012
Menu system updated and given better images to use.

Game Engine in Development Image 2

1/22/2012
2d lens flare and additive blending.

Discord Lens Flare + Additive Blending
Discord Lens Flare + Additive Blending
Discord Lens Flare + Additive Blending
Discord Lens Flare + Additive Blending

1/28/2012
Model loading and rendering.

Discord 3d Model Rendering