42 lines
663 B
C++
42 lines
663 B
C++
#pragma once
|
|
#include <cstdint>
|
|
|
|
struct SharedWindowData
|
|
{
|
|
void* Handle = nullptr;
|
|
int32_t WindowWidth = 1920;
|
|
int32_t WindowHeight = 1080;
|
|
};
|
|
|
|
struct FileChangeNotification
|
|
{
|
|
wchar_t FileName[128]{0};
|
|
};
|
|
|
|
struct SharedDevData
|
|
{
|
|
uint32_t ChangedShaderCount = 0;
|
|
FileChangeNotification ChangedShaders[16];
|
|
};
|
|
|
|
struct GameData
|
|
{
|
|
void* PermanentStorage = nullptr;
|
|
uint64_t PermanentStorageSize = 0;
|
|
|
|
void* EntityStorage = nullptr;
|
|
uint64_t EntityStorageSize = 0;
|
|
};
|
|
|
|
struct SharedData
|
|
{
|
|
SharedDevData Dev;
|
|
SharedWindowData Window;
|
|
GameData Game;
|
|
};
|
|
|
|
typedef void (*Startup)(SharedData& shared);
|
|
typedef void (*Update)();
|
|
typedef void (*Shutdown)();
|
|
|