From c7a3dcdc8a26eb5bf98ce2079abd66fd64534459 Mon Sep 17 00:00:00 2001 From: 0scar Date: Tue, 6 Feb 2024 12:52:32 +0100 Subject: Fixup window handling & rendering --- src/resources/include/engine/resources.h | 26 ++++++++++++++++++++++++ src/resources/include/engine/resources/texture.h | 14 +++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 src/resources/include/engine/resources/texture.h (limited to 'src/resources/include') diff --git a/src/resources/include/engine/resources.h b/src/resources/include/engine/resources.h index 9de24ce..32e68ac 100644 --- a/src/resources/include/engine/resources.h +++ b/src/resources/include/engine/resources.h @@ -3,6 +3,7 @@ #include +// TODO /* We need some "global resources", available to all states. * These are resources such as common fonts, GUI frames, button background * images. @@ -49,6 +50,29 @@ typedef union { Asset_AudioSpec audio; } asset_t; +// The resource spec +struct Resources { + // Was: +// usize textures_len; +// usize textures_size; +// usize fonts_len; +// +// usize texturepaths_len; +// usize fontpaths_len; +// +// /* Paths for our sources, kept in case the user wants to reload them */ +// Asset_TextureSpec** texture_paths; +// Asset_FontSpec** font_paths; +// +// /* Our actual sources */ +// Texture** textures; +// //TTF_Font** fonts; + + // But with the new way: + // usize assets_len; + // asset_t assets*; +}; + #define Resource_FontDefinition(_path, _fontsize) \ (const Asset_FontSpec) { \ .type = Asset_font, .font_path = _path, .ptsize = _fontsize \ @@ -76,4 +100,6 @@ isize resource_load_audio(Asset_AudioSpec audio_def); * to `engine_run` */ isize resource_make_global(isize resource_id); +#include + #endif diff --git a/src/resources/include/engine/resources/texture.h b/src/resources/include/engine/resources/texture.h new file mode 100644 index 0000000..8266957 --- /dev/null +++ b/src/resources/include/engine/resources/texture.h @@ -0,0 +1,14 @@ +#ifndef TEXTURE_H +#define TEXTURE_H + +#include + +typedef struct { + const i32 tilesize; + const i32 width; + const i32 height; +} Texture; + +Texture* load_texture(void* render, const Asset_TextureSpec* ts); + +#endif -- cgit v1.3