Skip to content

Korsreven/ion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

ION Engine 1.0

Introduction

ION engine is a fast, lightweight and fully functional 2D game engine using OpenGL.

With the combination of an easy to use high-level scene graph, a blazingly fast low-level batch renderer, fully functional GUI, integrated scripting and powerful utilities, ION Engine has everything you need to create games right out of the box. To learn some more about the engine, please check out the list of main features and the latest online version of the API reference. No prior knowledge of OpenGL is required to get started.

Source Code

ION engine is written in modern C++ (with some GLSL) and consists of around 115K lines of code. The development has been done exclusively using Visual Studio on a Microsoft Windows PC. The source code itself is platform independent and should be portable (with some coding effort).

Project Status

ION engine has been actively under development for a period of 5 years (2017 to 2022). Now that the engine is stable and feature complete, development will begin to slow down a bit while I start working on some games. The source code will be maintained from time to time, when new bugs are found or new features are needed. Tutorials and code examples will become available at a later date.

Dependencies

One of the things I enjoy the most when writing code, is actually writing most of the code myself. But there is no rule without exception... ION engine is using four different third party libraries.

How to get started

How to run the demo

Demo screenshots

How to setup shaders

ION engine comes with some default shaders.

  • IonModelShader is needed for rendering models (meshes, shapes, sprites etc.) as designed
  • IonParticleShader is needed for rendering particle systems as designed
  • IonTextShader is needed for rendering text as designed
  • IonSimple* are mostly for rendering GUI/HUD objects without any lighting or fog

The fixed function pipeline is used when rendering without shaders (not recommended). To render text properly without shaders, use FontManager::FontGlyphTextureType(GlyphTextureType::Texture2D).

Author

The ION game engine is written by Jan Ivar Goli.

License

The ION game engine is licensed under the MIT license.