Skip to content

Commit fb829bd

Browse files
committed
Fix mobile renderer motion vectors regression
1 parent 8aa37ca commit fb829bd

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

servers/rendering/renderer_rd/shaders/forward_mobile/scene_forward_mobile.glsl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -433,7 +433,7 @@ void vertex_shader(in vec3 vertex,
433433
float roughness_highp = 1.0;
434434

435435
#ifdef USE_DOUBLE_PRECISION
436-
mat4 modelview = scene_data.view_matrix * model_matrix;
436+
mat4 modelview = view_matrix * model_matrix;
437437

438438
// We separate the basis from the origin because the basis is fine with single point precision.
439439
// Then we combine the translations from the model matrix and the view matrix using emulated doubles.
@@ -448,14 +448,14 @@ void vertex_shader(in vec3 vertex,
448448

449449
// Overwrite the translation part of modelview with improved precision.
450450
vec3 temp_precision; // Will be ignored.
451-
modelview[3].xyz = double_add_vec3(model_origin, model_precision, scene_data.inv_view_matrix[3].xyz, view_precision, temp_precision);
452-
modelview[3].xyz = mat3(scene_data.view_matrix) * modelview[3].xyz;
451+
modelview[3].xyz = double_add_vec3(model_origin, model_precision, inv_view_matrix[3].xyz, view_precision, temp_precision);
452+
modelview[3].xyz = mat3(view_matrix) * modelview[3].xyz;
453453
#else
454-
mat4 modelview = scene_data.view_matrix * model_matrix;
454+
mat4 modelview = view_matrix * model_matrix;
455455
#endif
456-
mat3 modelview_normal = mat3(scene_data.view_matrix) * model_normal_matrix;
457-
mat4 read_view_matrix = scene_data.view_matrix;
458-
vec2 read_viewport_size = scene_data.viewport_size;
456+
mat3 modelview_normal = mat3(view_matrix) * model_normal_matrix;
457+
mat4 read_view_matrix = view_matrix;
458+
vec2 read_viewport_size = viewport_size;
459459

460460
{
461461
#CODE : VERTEX

0 commit comments

Comments
 (0)