#include "utils.h" #ifndef ASSETS_H #define ASSETS_H #define TEXTURE_ASSET_COUNT 13 #define IMAGE_ASSET_COUNT 1 #define SHADER_ASSET_COUNT 2 #define MODEL_ASSET_COUNT 2 extern const char textureAssetPaths[TEXTURE_ASSET_COUNT][FT_NAMEMAX]; extern const char imageAssetPaths[IMAGE_ASSET_COUNT][FT_NAMEMAX]; extern const char shaderAssetNames[SHADER_ASSET_COUNT][FT_NAMEMAX]; extern const char modelAssetPaths[MODEL_ASSET_COUNT][FT_NAMEMAX]; typedef int8_t AssetId; // Texture asset ids. enum { MINT_TEXTURE, NICKEL_TEXTURE, TREE_TEXTURE, BUSH_TEXTURE, FLOWER_TEXTURE, SAMANTHA_1_TEXTURE, SAMANTHA_2_TEXTURE, SAMANTHA_3_TEXTURE, SAMANTHA_4_TEXTURE, SAMANTHA_FLOOR_TEXTURE, TRASHCAN_TEXTURE, TRASH_TEXTURE, MEDICAL_TRASH_TEXTURE }; // Image asset ids. enum { SKYBOX_IMAGE, }; // Shader asset ids. enum { SKYBOX_SHADER, INSTANCING_SHADER }; // Model asset ids. enum { UTILITY_POLE_MODEL, SAMANTHA_MODEL }; typedef struct { Texture textures[TEXTURE_ASSET_COUNT]; Image images[IMAGE_ASSET_COUNT]; Shader shaders[SHADER_ASSET_COUNT]; Model models[MODEL_ASSET_COUNT]; } Assets; void initAssets(Assets* assets); void closeAssets(Assets* assets); #endif