summaryrefslogtreecommitdiff
path: root/resources/shaders/shader.vert
diff options
context:
space:
mode:
authorSebastian Park <SebPark03@gmail.com>2024-04-22 18:06:00 -0400
committerSebastian Park <SebPark03@gmail.com>2024-04-22 18:06:00 -0400
commitc7207643ad8c39f8ab802791f5833f4af23f67b6 (patch)
treed15a94d341a588dd25b8061abe377be530973715 /resources/shaders/shader.vert
parent28d74097815a8d52b8f47f6eae6464005a6bc552 (diff)
Implement transmissive attenuation.
Diffstat (limited to 'resources/shaders/shader.vert')
-rwxr-xr-xresources/shaders/shader.vert3
1 files changed, 3 insertions, 0 deletions
diff --git a/resources/shaders/shader.vert b/resources/shaders/shader.vert
index 8dda424..fbb9950 100755
--- a/resources/shaders/shader.vert
+++ b/resources/shaders/shader.vert
@@ -19,6 +19,7 @@ out vec3 pos;
out vec3 refrPos;
out float refrProb;
out vec2 uv;
+out float matIor;
vec4 getRefrPos() {
float depth = -1.f; // TODO: Pass as uniform
@@ -26,6 +27,7 @@ vec4 getRefrPos() {
float cos_theta_i = dot(-w_o, normal_worldSpace);
float n_i = 1;
float n_t = 1.33f;
+// matIor = n_t;
float determinant = 1.f - (pow((n_i / n_t), 2.f) * (1.f - pow(cos_theta_i, 2.f)));
float r0 = pow((n_i - n_t) / (n_i + n_t), 2.f); // variable required to calculate probability of reflection
@@ -54,6 +56,7 @@ void main() {
float dist = position.y - depth;
float width = 81.f * 2.f;
float length = 81.f * 2.f;
+ matIor = 1.33f;
normal_cameraSpace = normalize(inverse(transpose(mat3(view))) * inverseTransposeModel * normal);
camera_worldSpace = vec3(inverseView * vec4(0.f, 0.f, 0.f, 1.f));