From 19a4d75b44d1a06bc420c251e0a1ad13dcbc3d6f Mon Sep 17 00:00:00 2001 From: Aaron Franke Date: Tue, 2 Aug 2022 17:09:55 -0500 Subject: Replace Vector3.ToDiagonalMatrix with Basis.FromScale in C# --- modules/mono/glue/GodotSharp/GodotSharp/Core/Basis.cs | 16 ++++++++++++++++ .../mono/glue/GodotSharp/GodotSharp/Core/Transform3D.cs | 2 +- modules/mono/glue/GodotSharp/GodotSharp/Core/Vector3.cs | 16 ---------------- 3 files changed, 17 insertions(+), 17 deletions(-) (limited to 'modules/mono') diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Basis.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Basis.cs index b1f1decd72..437878818c 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Basis.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Basis.cs @@ -827,6 +827,22 @@ namespace Godot Row2 = new Vector3(xz, yz, zz); } + /// + /// Constructs a pure scale basis matrix with no rotation or shearing. + /// The scale values are set as the main diagonal of the matrix, + /// and all of the other parts of the matrix are zero. + /// + /// The scale Vector3. + /// A pure scale Basis matrix. + public static Basis FromScale(Vector3 scale) + { + return new Basis( + scale.x, 0, 0, + 0, scale.y, 0, + 0, 0, scale.z + ); + } + /// /// Composes these two basis matrices by multiplying them /// together. This has the effect of transforming the second basis diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform3D.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform3D.cs index c00b9d8e9b..9eaf4f3252 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform3D.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Transform3D.cs @@ -235,7 +235,7 @@ namespace Godot /// The scaled transformation matrix. public Transform3D ScaledLocal(Vector3 scale) { - Basis tmpBasis = new Basis(new Vector3(scale.x, 0, 0), new Vector3(0, scale.y, 0), new Vector3(0, 0, scale.z)); + Basis tmpBasis = Basis.FromScale(scale); return new Transform3D(basis * tmpBasis, origin); } diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Vector3.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Vector3.cs index ec2e724b10..c3d5fbfdef 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Vector3.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Vector3.cs @@ -620,22 +620,6 @@ namespace Godot ); } - /// - /// Returns a diagonal matrix with the vector as main diagonal. - /// - /// This is equivalent to a with no rotation or shearing and - /// this vector's components set as the scale. - /// - /// A with the vector as its main diagonal. - public Basis ToDiagonalMatrix() - { - return new Basis( - x, 0, 0, - 0, y, 0, - 0, 0, z - ); - } - // Constants private static readonly Vector3 _zero = new Vector3(0, 0, 0); private static readonly Vector3 _one = new Vector3(1, 1, 1); -- cgit v1.2.3