You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-12-04 17:04:49 +00:00
Replace Vector3.ToDiagonalMatrix with Basis.FromScale in C#
This commit is contained in:
@@ -827,6 +827,22 @@ namespace Godot
|
|||||||
Row2 = new Vector3(xz, yz, zz);
|
Row2 = new Vector3(xz, yz, zz);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 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.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="scale">The scale Vector3.</param>
|
||||||
|
/// <returns>A pure scale Basis matrix.</returns>
|
||||||
|
public static Basis FromScale(Vector3 scale)
|
||||||
|
{
|
||||||
|
return new Basis(
|
||||||
|
scale.x, 0, 0,
|
||||||
|
0, scale.y, 0,
|
||||||
|
0, 0, scale.z
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Composes these two basis matrices by multiplying them
|
/// Composes these two basis matrices by multiplying them
|
||||||
/// together. This has the effect of transforming the second basis
|
/// together. This has the effect of transforming the second basis
|
||||||
|
|||||||
@@ -235,7 +235,7 @@ namespace Godot
|
|||||||
/// <returns>The scaled transformation matrix.</returns>
|
/// <returns>The scaled transformation matrix.</returns>
|
||||||
public Transform3D ScaledLocal(Vector3 scale)
|
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);
|
return new Transform3D(basis * tmpBasis, origin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -620,22 +620,6 @@ namespace Godot
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Returns a diagonal matrix with the vector as main diagonal.
|
|
||||||
///
|
|
||||||
/// This is equivalent to a <see cref="Basis"/> with no rotation or shearing and
|
|
||||||
/// this vector's components set as the scale.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A <see cref="Basis"/> with the vector as its main diagonal.</returns>
|
|
||||||
public Basis ToDiagonalMatrix()
|
|
||||||
{
|
|
||||||
return new Basis(
|
|
||||||
x, 0, 0,
|
|
||||||
0, y, 0,
|
|
||||||
0, 0, z
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Constants
|
// Constants
|
||||||
private static readonly Vector3 _zero = new Vector3(0, 0, 0);
|
private static readonly Vector3 _zero = new Vector3(0, 0, 0);
|
||||||
private static readonly Vector3 _one = new Vector3(1, 1, 1);
|
private static readonly Vector3 _one = new Vector3(1, 1, 1);
|
||||||
|
|||||||
Reference in New Issue
Block a user