Merge the game to dengine, reduce header coupling
Until engine architecture can clearly be separated from the game, i.e. notion of entity storage belonging to game and concept of entity belonging to engine, worlds/scenes belonging to game or engine- the project will only refer to Dengine.
This commit is contained in:
+88
-2
@@ -1,8 +1,81 @@
|
||||
#include "Dengine/Debug.h"
|
||||
#include "Dengine/Platform.h"
|
||||
#include "Dengine/AssetManager.h"
|
||||
#include "Dengine/Entity.h"
|
||||
#include "Dengine/MemoryArena.h"
|
||||
#include "Dengine/Platform.h"
|
||||
#include "Dengine/Renderer.h"
|
||||
#include "Dengine/WorldTraveller.h"
|
||||
|
||||
DebugState GLOBAL_debug;
|
||||
typedef struct DebugState
|
||||
{
|
||||
Font font;
|
||||
i32 *callCount;
|
||||
f32 stringLineGap;
|
||||
|
||||
/* Debug strings rendered in top left corner */
|
||||
char debugStrings[64][128];
|
||||
i32 numDebugStrings;
|
||||
f32 stringUpdateTimer;
|
||||
f32 stringUpdateRate;
|
||||
v2 initialStringP;
|
||||
v2 currStringP;
|
||||
|
||||
/* Debug gui console log */
|
||||
char console[20][128];
|
||||
i32 consoleIndex;
|
||||
v2 initialConsoleP;
|
||||
} DebugState;
|
||||
|
||||
GLOBAL_VAR DebugState GLOBAL_debug;
|
||||
|
||||
inline char *debug_entitystate_string(i32 val)
|
||||
{
|
||||
char *string;
|
||||
switch(val)
|
||||
{
|
||||
case entitystate_idle:
|
||||
string = "EntityState_Idle";
|
||||
break;
|
||||
case entitystate_battle:
|
||||
string = "EntityState_Battle";
|
||||
break;
|
||||
case entitystate_attack:
|
||||
string = "EntityState_Attack";
|
||||
break;
|
||||
case entitystate_dead:
|
||||
string = "EntityState_Dead";
|
||||
break;
|
||||
case entitystate_count:
|
||||
string = "EntityState_Count (Error!)";
|
||||
break;
|
||||
case entitystate_invalid:
|
||||
string = "EntityState_Invalid (Error!)";
|
||||
break;
|
||||
default:
|
||||
string = "EntityState Unknown (NOT DEFINED)";
|
||||
}
|
||||
return string;
|
||||
}
|
||||
|
||||
inline char *debug_entityattack_string(i32 val)
|
||||
{
|
||||
char *string;
|
||||
switch(val)
|
||||
{
|
||||
case entityattack_tackle:
|
||||
string = "EntityAttack_Tackle";
|
||||
break;
|
||||
case entityattack_count:
|
||||
string = "EntityAttack_Count (Error!)";
|
||||
break;
|
||||
case entityattack_invalid:
|
||||
string = "EntityAttack_Invalid";
|
||||
break;
|
||||
default:
|
||||
string = "EntityAttack Unknown (NOT DEFINED)";
|
||||
}
|
||||
return string;
|
||||
}
|
||||
|
||||
void debug_init(MemoryArena *arena, v2 windowSize, Font font)
|
||||
{
|
||||
@@ -30,6 +103,19 @@ void debug_init(MemoryArena *arena, v2 windowSize, Font font)
|
||||
GLOBAL_debug.initialConsoleP = V2(consoleXPos, consoleYPos);
|
||||
}
|
||||
|
||||
void debug_callCountIncrement(i32 id)
|
||||
{
|
||||
ASSERT(id < debugcallcount_num);
|
||||
GLOBAL_debug.callCount[id]++;
|
||||
}
|
||||
|
||||
void debug_clearCallCounter()
|
||||
{
|
||||
for (i32 i = 0; i < debugcallcount_num; i++)
|
||||
GLOBAL_debug.callCount[i] = 0;
|
||||
}
|
||||
|
||||
|
||||
void debug_consoleLog(char *string, char *file, int lineNum)
|
||||
{
|
||||
|
||||
|
||||
Reference in New Issue
Block a user