diff options
author | nathan <nathansmith@disroot.org> | 2025-07-27 13:38:40 +0000 |
---|---|---|
committer | nathan <nathansmith@disroot.org> | 2025-07-27 13:38:40 +0000 |
commit | ed3b4610cf773de562b3c55f452fbf7bf5b12b00 (patch) | |
tree | 3994a79a8e226f0392ae90734126e9e145728075 | |
parent | 37e603085675aca97f94cce66fcd5d0fa3d50b1a (diff) | |
download | FindThings-ed3b4610cf773de562b3c55f452fbf7bf5b12b00.tar.gz FindThings-ed3b4610cf773de562b3c55f452fbf7bf5b12b00.tar.bz2 FindThings-ed3b4610cf773de562b3c55f452fbf7bf5b12b00.zip |
Improved skybox
-rw-r--r-- | assets/shaders/glsl100/skybox.fs | 13 | ||||
-rw-r--r-- | assets/shaders/glsl330/skybox.fs | 13 | ||||
-rw-r--r-- | assets/skybox.png | bin | 10992 -> 11307 bytes | |||
-rw-r--r-- | design.org | 4 | ||||
-rw-r--r-- | src/game.c | 8 |
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 Binary files differindex 36a79b2..6bc64c2 100644 --- a/assets/skybox.png +++ b/assets/skybox.png @@ -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 @@ -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], |