Here you can find the details about each of Module and class that is part of FeyGamesFramework.

For step-by-step tutorial, please check Tutorials section.

The full list of all Modules:

Module Obligatory Implementable Description
Common Yes No Set of common data types (e.g. Object, ID, ColorRGBA, Rectangle) and operations (conversions between types, String operations, paths & directories managing and so on).
Errors Yes Yes Unified errors handling for game and its Modules.
GUI No No Graphical user interface (panels, labels, buttons etc.) and GUI events propagation. Requires Graphic Module and IODevices Module.
Graphic No Yes Managing and rendering both 2D & 3D graphic.
Physics No Yes Physics simulations.
Kernel No Yes
GameLogic No Yes
Database No Yes Storing, accessing and working on data from database (e.g. SQL).
Input No Yes
IODevices No Yes Handlers for mouse and keyboard.
Internet No Yes Handlers for Internet communication (UDP server and client, HTTP).

Implementable means that given Module can have multiple Implementations. For example, Graphic Module can have DirectX and OpenGL versions. Implementable Modules can be also implemented by yourself. On the opposite, Modules marked as not-implementable have just one, unchangeable version.

To learn more, visit the tutorial page.


  • GUIDefines.h - DEBUG_INFO - make ONE standard for DEBUG defines for ALL Modules instead of it.
  • Add override where possible.
  • Errors generation info for methods.
  • Time-complexity info for methods (linear with... etc.).