Introduction
This is a work in progress, both documentation and engine are in active development
This is the official documentation of the Kogayonon Game Engine.
Written using C++ 20, OpenGL, libraries found below and izecheru`s fingers :)
Purpose and scope
This started as a dream project and in the past months I've been able to implement a lot of cool stuff so the goal and scope of project is surely shifting.
I intend to, given freedom that all the library licenses give me, publish a game on steam this year.
Structure
I chose to structure the project in modules, each having many classes that serve a specific purpose in the bigger picture.
This was a decision I took when taking inspiration from how others strucutred their engines, particularly how Scion2D is written.
This also helps compilation time, if you built the entire engine and then made a slight chage in gui module, only the gui module would get recompiled saving a lot of time.
Precompiled headers are not yet used but would prove to be a good addition to compilation speed up changes
Contributing
Right now I intend to work on this project alone but for sure I'll update this as soon as that changes.
Libraries used
A sincere thank you to all the developers of those wonderful libraries.
- EnTT- entity component system
- SDL2- cross-platform abstraction layer for computer multimedia layers
- Dear ImGui - immediate mode gui for C++
- GLM- math lib
- RapidJson - json parser and generator
- sol2- C++ lua binding library
- Lua- scripting language
- Nvidia PhysX - physics library
- Yaml-cpp - yaml parser and generator
- Soil2 - image loading
note
If I did not mention your library I'm sorry, this gets updated often so a thing or two might be missed so don't worry