mirror of
https://github.com/zhenyan121/Cubed.git
synced 2026-06-21 18:17:03 +08:00
* feat(shaders): add lighting to block accumulation OIT shaders * feat(renderer): add water rendering with OIT and new shaders * feat(water): implement screen-space reflection and refraction for water with depth fade and perturbation * refactor(shader): replace glUniform calls with generic set_loc and remove cached locations * feat(water): add noise-based caustics and configurable fog density * fix(water shader): update depth fade and remove underwater check - Increase DEPTH_FADE_DISTANCE from 8 to 10 - Remove conditional so depth fade always applies - Darken deepColor from (0, 0.08, 0.15) to (0, 0.015, 0.045) * feat(underwater): add volume scattering and shadow mapping for light shafts
20 lines
475 B
GLSL
20 lines
475 B
GLSL
#version 460
|
|
|
|
layout (location = 0) in vec2 pos;
|
|
layout (location = 1) in vec2 texCoord;
|
|
|
|
uniform mat4 InverseViewProjection;
|
|
uniform vec3 cameraPos;
|
|
|
|
out vec2 TexCoord;
|
|
out vec3 rayDir;
|
|
void main() {
|
|
TexCoord = texCoord;
|
|
vec4 clipPos = vec4(pos, 1.0, 1.0);
|
|
vec4 worldPosH = InverseViewProjection * clipPos;
|
|
vec3 worldPos = worldPosH.xyz / worldPosH.w;
|
|
vec3 RayDir = worldPos - cameraPos;
|
|
rayDir = normalize(RayDir);
|
|
gl_Position = clipPos;
|
|
|
|
} |