Browse Source

Flip convention of motion vector to point from current pixel to the previous pixel.

Dario 2 years ago
parent
commit
f14c944c21

+ 1 - 1
servers/rendering/renderer_rd/shaders/effects/taa_resolve.glsl

@@ -320,7 +320,7 @@ vec3 temporal_antialiasing(uvec2 pos_group_top_left, uvec2 pos_group, uvec2 pos_
 	vec2 velocity = imageLoad(velocity_buffer, ivec2(pos_screen)).xy;
 
 	// Get reprojected uv
-	vec2 uv_reprojected = uv - velocity;
+	vec2 uv_reprojected = uv + velocity;
 
 	// Get input color
 	vec3 color_input = load_color(pos_group);

+ 1 - 1
servers/rendering/renderer_rd/shaders/forward_clustered/scene_forward_clustered.glsl

@@ -2293,7 +2293,7 @@ void fragment_shader(in SceneData scene_data) {
 	vec2 position_uv = position_clip * vec2(0.5, 0.5);
 	vec2 prev_position_uv = prev_position_clip * vec2(0.5, 0.5);
 
-	motion_vector = position_uv - prev_position_uv;
+	motion_vector = prev_position_uv - position_uv;
 #endif
 }