aboutsummaryrefslogtreecommitdiffstats
path: root/src/assets.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/assets.c')
-rw-r--r--src/assets.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/assets.c b/src/assets.c
index 0434b5c..2ceff83 100644
--- a/src/assets.c
+++ b/src/assets.c
@@ -8,13 +8,39 @@ const char textureAssetPaths[TEXTURE_ASSET_COUNT][FT_NAMEMAX] = {
"flower.png"
};
+const char imageAssetPaths[IMAGE_ASSET_COUNT][FT_NAMEMAX] = {
+ "skybox.png"
+};
+
+const char shaderAssetNames[SHADER_ASSET_COUNT][FT_NAMEMAX] = {
+ "skybox"
+};
+
void initAssets(Assets* assets)
{
+ // Textures.
for (int index = 0; index < TEXTURE_ASSET_COUNT; ++index)
{
assets->textures[index] = LoadTexture(
TextFormat("assets/%s", textureAssetPaths[index]));
}
+
+ // Images;
+ for (int index = 0; index < IMAGE_ASSET_COUNT; ++index)
+ {
+ assets->images[index] = LoadImage(
+ TextFormat("assets/%s", imageAssetPaths[index]));
+ }
+
+ // Shaders.
+ for (int index = 0; index < SHADER_ASSET_COUNT; ++index)
+ {
+ assets->shaders[index] = LoadShader(
+ TextFormat("assets/shaders/glsl%i/%s.vs", GLSL_VERSION,
+ shaderAssetNames[index]),
+ TextFormat("assets/shaders/glsl%i/%s.fs", GLSL_VERSION,
+ shaderAssetNames[index]));
+ }
}
void closeAssets(Assets* assets)
@@ -23,4 +49,14 @@ void closeAssets(Assets* assets)
{
UnloadTexture(assets->textures[index]);
}
+
+ for (int index = 0; index < IMAGE_ASSET_COUNT; ++index)
+ {
+ UnloadImage(assets->images[index]);
+ }
+
+ for (int index = 0; index < SHADER_ASSET_COUNT; ++index)
+ {
+ UnloadShader(assets->shaders[index]);
+ }
}