Waterflow
Visualize water in terrain
|
Fragment shader for water rendering. More...
Go to the source code of this file.
Classes | |
struct | LightParam |
Struct that contains one light source. More... | |
Functions | |
layout (std140, binding=0) uniform LightInfo | |
< All the lights are stored in this buffer | |
void | main (void) |
Variables | |
const float | airRefInd = 1.0 |
Refraction index of air. | |
float | alpha |
Angle used for refraction approximation. | |
vec3 | ambLight |
Ambient light color. | |
float | bottomDisplacement1 |
Distance to displace along the bottom for the first approximation. | |
float | bottomDisplacement2 |
Better displacement approximation distance. | |
vec3 | bottomLight |
Total bottom light color. | |
vec3 | bottomNormal |
Normal of seen bottom. | |
vec3 | bottomPos |
Position of seen bottom. | |
uniform vec3 | camPos |
Camera position. | |
float | depth |
Water depth at fragment. | |
float | depthAtDis1 |
Depth at first displacement approximation. | |
float | depthAtDis2 |
Depth at better approximation. | |
vec3 | diffLight |
Diffuse light color. | |
vec3 | displacement1 |
Displacement vector (first approximation). | |
vec3 | displacement2 |
Better displacement approximation vector. | |
vec3 | displacementDirection |
Refraction direction in the xz-plane. | |
vec3 | eye |
Vector from the fragment to the camera. | |
float | h |
Height at first approximation. | |
uniform sampler2D | height_texUnit |
Terrain geometry (normal and height) texture. | |
float | kamb |
Ambient light coefficient. | |
float | kblue |
"Blueness" coefficient. | |
float | kdiff |
Diffuse light coefficient. | |
float | krefl |
Reflected light coefficient. | |
float | ktransb |
Transparent light (blue channel) coefficient. | |
float | ktransg |
Transparent light (green channel) coefficient. | |
float | ktransr |
Transparent light (red channel) coefficient. | |
vec3 | Normal |
(Modified) fragment normal. | |
out vec4 | out_Color |
Fragment (out) pixel value. | |
in vec3 | out_Normal |
Fragment normal. | |
in vec3 | out_ObjPos |
Fragment position. | |
in vec2 | out_TexCoord |
Fragment texture coordinate. | |
vec3 | r |
Reflected light vector. | |
vec3 | re |
Reflected eye vector. | |
vec3 | reflLight |
Reflected light (skybox) color. | |
vec3 | right |
Vector to the right (camera position dependent). | |
vec3 | s |
Incident light vector. | |
uniform vec3 | size |
Data size. | |
uniform samplerCube | sky_texUnit |
Skybox texture. | |
vec3 | skyrefl |
Skybox color. | |
vec3 | specLight |
Specular light color. | |
vec3 | surfaceLight |
Total surface light color. | |
uniform sampler2D | terr_texUnit |
Terrain (color) texture. | |
vec4 | terrainDataAtBottom |
Terrain geometry at better approximation. | |
vec4 | terrainDataAtDis1 |
Terrain geometry at first approximation. | |
vec4 | terrainDataUnderSurface |
Terrain geometry under fragment. | |
vec4 | texDataAtBottom |
Terrain color at bottom. | |
float | theta1 |
Incident light angle (from camera to bottom). | |
float | theta2 |
Refracted light angle (from camera to bottom). | |
uniform float | time |
Time variable. | |
uniform float | transparency |
Transparency of the water. | |
const vec3 | up = vec3(0.0, 1.0, 0.0) |
Up vector (world coordinates). | |
const float | waterRefInd = 1.34451 |
Refraction index of water. | |
float | wdist |
Distance from surface to better approximation. |
Fragment shader for water rendering.
Definition in file watershader.frag.