Merge pull request #110410 from BastiaanOlij/fix_stereo_label3d_fixed_size

Fix fixed size flag on StandardMaterial3D when rendering in stereo
This commit is contained in:
Thaddeus Crews
2025-09-18 12:42:21 -05:00

View File

@ -1357,7 +1357,7 @@ void vertex() {)";
if (flags[FLAG_FIXED_SIZE]) {
code += R"(
// Fixed Size: Enabled
if (PROJECTION_MATRIX[3][3] != 0.0) {
if (PROJECTION_MATRIX[2][3] == 0.0) {
// Orthogonal matrix; try to do about the same with viewport size.
float h = abs(1.0 / (2.0 * PROJECTION_MATRIX[1][1]));
// Consistent with vertical FOV (Keep Height).
@ -1367,7 +1367,7 @@ void vertex() {)";
MODELVIEW_MATRIX[2] *= sc;
} else {
// Scale by depth.
float sc = -(MODELVIEW_MATRIX)[3].z;
float sc = length((MODELVIEW_MATRIX)[3].xyz);
MODELVIEW_MATRIX[0] *= sc;
MODELVIEW_MATRIX[1] *= sc;
MODELVIEW_MATRIX[2] *= sc;