Add Node::SetScale(Vector2) to prevent a bug

This commit is contained in:
Lynix 2019-12-22 17:01:05 +01:00
parent dba9bb8b47
commit e282b842b4
2 changed files with 7 additions and 0 deletions

View File

@ -75,6 +75,7 @@ namespace Nz
void SetPosition(const Vector3f& translation, CoordSys coordSys = CoordSys_Local); void SetPosition(const Vector3f& translation, CoordSys coordSys = CoordSys_Local);
void SetPosition(float translationX, float translationY, float translationZ = 0.f, CoordSys coordSys = CoordSys_Local); void SetPosition(float translationX, float translationY, float translationZ = 0.f, CoordSys coordSys = CoordSys_Local);
void SetRotation(const Quaternionf& quat, CoordSys coordSys = CoordSys_Local); void SetRotation(const Quaternionf& quat, CoordSys coordSys = CoordSys_Local);
void SetScale(const Vector2f& scale, CoordSys coordSys = CoordSys_Local);
void SetScale(const Vector3f& scale, CoordSys coordSys = CoordSys_Local); void SetScale(const Vector3f& scale, CoordSys coordSys = CoordSys_Local);
void SetScale(float scale, CoordSys coordSys = CoordSys_Local); void SetScale(float scale, CoordSys coordSys = CoordSys_Local);
void SetScale(float scaleX, float scaleY, float scaleZ = 1.f, CoordSys coordSys = CoordSys_Local); void SetScale(float scaleX, float scaleY, float scaleZ = 1.f, CoordSys coordSys = CoordSys_Local);

View File

@ -530,6 +530,12 @@ namespace Nz
InvalidateNode(); InvalidateNode();
} }
void Node::SetScale(const Vector2f& scale, CoordSys coordSys)
{
// Prevent Z scale at zero (can happen when using SetScale with a Vec2)
SetScale(scale.x, scale.y, 1.f, coordSys);
}
void Node::SetScale(const Vector3f& scale, CoordSys coordSys) void Node::SetScale(const Vector3f& scale, CoordSys coordSys)
{ {
switch (coordSys) switch (coordSys)