Jagguar Game Engine
Loading...
Searching...
No Matches
Engine.hpp
1#ifndef SDLGRAPHICSPROGRAM
2#define SDLGRAPHICSPROGRAM
3
4#include <iostream>
5#include <string>
6#include <sstream>
7#include <fstream>
8#include <stdlib.h>
9#include <time.h>
10#include <vector>
11
12#include "imgui.h"
13
14#include "GameObject.hpp"
15#include "IGraphicsEngineRenderer.hpp"
16#include "PhysicsEngine.hpp"
17#include "GameMakerGUI.hpp"
18
23class Engine
24{
25public:
29 Engine();
30
34 ~Engine();
35
40 void Input(bool *quit, bool *editing);
41
45 void Update();
46
50 void Render();
51
55 void MainGameLoop();
56
61 void Start();
62
67 void Shutdown();
68
74
80
85 void InitializeGUI();
86
94 GameObject *createFly(Vec2D spawnPos);
95
96private:
97
102
107
111 GameMakerGUI *mGUI = nullptr;
112
116 std::vector<GameObject *> m_gameobjects;
117
118 bool runGame = true;
119};
120
121#endif
Definition: Engine.hpp:24
bool runGame
Definition: Engine.hpp:118
GameObject * createFly(Vec2D spawnPos)
Definition: Engine.cpp:206
void Start()
Definition: Engine.cpp:162
void InitializePhysicsSubsystem()
Definition: Engine.cpp:251
void Shutdown()
Definition: Engine.cpp:221
PhysicsEngine * mPhysics
Definition: Engine.hpp:106
void InitializeGraphicsSubSystem()
Definition: Engine.cpp:236
void Input(bool *quit, bool *editing)
Definition: Engine.cpp:36
SDLGraphicsEngineRenderer * mRenderer
Definition: Engine.hpp:101
Engine()
Definition: Engine.cpp:26
~Engine()
Definition: Engine.cpp:31
GameMakerGUI * mGUI
Definition: Engine.hpp:111
void MainGameLoop()
Definition: Engine.cpp:127
void InitializeGUI()
Definition: Engine.cpp:269
std::vector< GameObject * > m_gameobjects
Definition: Engine.hpp:116
void Update()
Definition: Engine.cpp:58
void Render()
Definition: Engine.cpp:87
Definition: GameMakerGUI.hpp:20
Definition: GameObject.hpp:13
Definition: PhysicsEngine.hpp:11
Definition: IGraphicsEngineRenderer.hpp:63
Definition: TinyMath.hpp:14