4#include <andromenda/Surface.h>
5#include <foundation/Common.h>
7#include "GameOptions.h"
44 friend class GameSerializer;
45 friend class GameBootstrapper;
73 ~IGame()
override =
default;
85 virtual void Run() = 0;
The renderer of component registry.
Definition Surface.h:28
Represents named set of parameters which can be serialized.
Definition GameObject.h:274
Storage of GameObjects (scene). GameObjectRegistry take over ownership of object.
Definition GameObject.h:372
Represents serializable GameObjectRegistry with rendering, asset manager.
Definition IGame.h:42
virtual void Run()=0
Game entry point.
virtual void OnRender()=0
Event called when game is rerendered.
virtual void OnSurfaceCallback(const String &id)=0
Event called when any component sends callback.
GameOptions m_Options
Game options determined by GameBootstrapper.
Definition IGame.h:51
virtual ProductInfo GetProductInfo()=0
Returns product info by derived class.
VfsManager m_VfsManager
Main game asset manager.
Definition IGame.h:63
Andromenda::Surface * m_Surface
Main game renderer.
Definition IGame.h:57
Virtual file storage manager.
Definition VfsManager.h:16
Represents a mutable sequence of characters, providing various member functions for string manipulati...
Definition String.h:16
Game launch options.
Definition GameOptions.h:11
Game product info.
Definition IGame.h:17
String Name
Product name.
Definition IGame.h:22
int32 Version
Game version.
Definition IGame.h:28
std::function< GameObject *()> GameSettingsSupplier
Lambda for creating game settings.
Definition IGame.h:34