aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornathan <nathansmith@disroot.org>2025-07-27 13:38:40 +0000
committernathan <nathansmith@disroot.org>2025-07-27 13:38:40 +0000
commited3b4610cf773de562b3c55f452fbf7bf5b12b00 (patch)
tree3994a79a8e226f0392ae90734126e9e145728075
parent37e603085675aca97f94cce66fcd5d0fa3d50b1a (diff)
downloadFindThings-ed3b4610cf773de562b3c55f452fbf7bf5b12b00.tar.gz
FindThings-ed3b4610cf773de562b3c55f452fbf7bf5b12b00.tar.bz2
FindThings-ed3b4610cf773de562b3c55f452fbf7bf5b12b00.zip
Improved skybox
-rw-r--r--assets/shaders/glsl100/skybox.fs13
-rw-r--r--assets/shaders/glsl330/skybox.fs13
-rw-r--r--assets/skybox.pngbin10992 -> 11307 bytes
-rw-r--r--design.org4
-rw-r--r--src/game.c8
5 files changed, 4 insertions, 34 deletions
diff --git a/assets/shaders/glsl100/skybox.fs b/assets/shaders/glsl100/skybox.fs
index 0ea6876..0861a7a 100644
--- a/assets/shaders/glsl100/skybox.fs
+++ b/assets/shaders/glsl100/skybox.fs
@@ -7,25 +7,14 @@ varying vec3 fragPosition;
// Input uniform values
uniform samplerCube environmentMap;
-uniform bool vflipped;
-uniform bool doGamma;
void main()
{
// Fetch color from texture map
- vec4 texelColor = vec4(0.0);
-
- if (vflipped) texelColor = textureCube(environmentMap, vec3(fragPosition.x, -fragPosition.y, fragPosition.z));
- else texelColor = textureCube(environmentMap, fragPosition);
+ vec4 texelColor = textureCube(environmentMap, fragPosition);
vec3 color = vec3(texelColor.x, texelColor.y, texelColor.z);
- if (doGamma) // Apply gamma correction
- {
- color = color/(color + vec3(1.0));
- color = pow(color, vec3(1.0/2.2));
- }
-
// Calculate final fragment color
gl_FragColor = vec4(color, 1.0);
}
diff --git a/assets/shaders/glsl330/skybox.fs b/assets/shaders/glsl330/skybox.fs
index d71fef0..cb64db0 100644
--- a/assets/shaders/glsl330/skybox.fs
+++ b/assets/shaders/glsl330/skybox.fs
@@ -5,8 +5,6 @@ in vec3 fragPosition;
// Input uniform values
uniform samplerCube environmentMap;
-uniform bool vflipped;
-uniform bool doGamma;
// Output fragment color
out vec4 finalColor;
@@ -14,16 +12,7 @@ out vec4 finalColor;
void main()
{
// Fetch color from texture map
- vec3 color = vec3(0.0);
-
- if (vflipped) color = texture(environmentMap, vec3(fragPosition.x, -fragPosition.y, fragPosition.z)).rgb;
- else color = texture(environmentMap, fragPosition).rgb;
-
- if (doGamma)// Apply gamma correction
- {
- color = color/(color + vec3(1.0));
- color = pow(color, vec3(1.0/2.2));
- }
+ vec3 color = texture(environmentMap, fragPosition).rgb;
// Calculate final fragment color
finalColor = vec4(color, 1.0);
diff --git a/assets/skybox.png b/assets/skybox.png
index 36a79b2..6bc64c2 100644
--- a/assets/skybox.png
+++ b/assets/skybox.png
Binary files differ
diff --git a/design.org b/design.org
index c5befc7..481f231 100644
--- a/design.org
+++ b/design.org
@@ -94,11 +94,11 @@ creates is possible to beat. A little wack is fine as long as its
beatable. Since most of the world will just be a height map a image will be
generated first than rest of the world will be based around it.
-* TODO World generation check list [3/8]
+* TODO World generation check list [4/8]
+ [X] Basic terrain
+ [X] Ground texture
+ [X] Trees/plants
-+ [ ] Sky
++ [X] Sky
+ [ ] Pond
+ [ ] Power lines
+ [ ] Buildings
diff --git a/src/game.c b/src/game.c
index 80efe6d..3669c10 100644
--- a/src/game.c
+++ b/src/game.c
@@ -24,14 +24,6 @@ void initGame(Game* game)
game->skybox.materials[0].shader,
GetShaderLocation(game->skybox.materials[0].shader, "environmentMap"),
(int[1]){ MATERIAL_MAP_CUBEMAP }, SHADER_UNIFORM_INT);
- SetShaderValue(
- game->skybox.materials[0].shader,
- GetShaderLocation(game->skybox.materials[0].shader, "doGamma"),
- (int[1]){ 0 }, SHADER_UNIFORM_INT);
- SetShaderValue(
- game->skybox.materials[0].shader,
- GetShaderLocation(game->skybox.materials[0].shader, "vflipped"),
- (int[1]){ 0 }, SHADER_UNIFORM_INT);
game->skybox.materials[0].maps[MATERIAL_MAP_CUBEMAP].texture =
LoadTextureCubemap(game->assets.images[SKYBOX_IMAGE],