diff options
author | Yuri Rubinsky <chaosus89@gmail.com> | 2022-07-27 09:01:12 +0300 |
---|---|---|
committer | Yuri Rubinsky <chaosus89@gmail.com> | 2022-07-27 09:06:18 +0300 |
commit | 2dc59a3eea9d9c2507d87b55495c0c04affbe9ef (patch) | |
tree | b6574cf7c13e0a21fe8560a77254eb9425fe11ec | |
parent | ad9a8e70f499267251daaa4cb51f3c2545d4ad4e (diff) |
Fix incorrect conversion of default value for mat4 uniform in shaders
-rw-r--r-- | servers/rendering/shader_language.cpp | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/servers/rendering/shader_language.cpp b/servers/rendering/shader_language.cpp index 9fc3e8f8d9..bb41b06189 100644 --- a/servers/rendering/shader_language.cpp +++ b/servers/rendering/shader_language.cpp @@ -3856,18 +3856,11 @@ Variant ShaderLanguage::constant_value_to_variant(const Vector<ShaderLanguage::C } value = Variant(array); } else { - Basis p; - p[0][0] = p_value[0].real; - p[0][1] = p_value[1].real; - p[0][2] = p_value[2].real; - p[1][0] = p_value[4].real; - p[1][1] = p_value[5].real; - p[1][2] = p_value[6].real; - p[2][0] = p_value[8].real; - p[2][1] = p_value[9].real; - p[2][2] = p_value[10].real; - Transform3D t = Transform3D(p, Vector3(p_value[3].real, p_value[7].real, p_value[11].real)); - value = Variant(t); + Projection p = Projection(Vector4(p_value[0].real, p_value[1].real, p_value[2].real, p_value[3].real), + Vector4(p_value[4].real, p_value[5].real, p_value[6].real, p_value[7].real), + Vector4(p_value[8].real, p_value[9].real, p_value[10].real, p_value[11].real), + Vector4(p_value[12].real, p_value[13].real, p_value[14].real, p_value[15].real)); + value = Variant(p); } break; } |