31 #include "Utilities/ECS/Component.h" 32 #include "Utilities/Math/Math.h" 40 Vector3 translation = MakeVector3(0.0f);
41 Vector3 scale = MakeVector3(1.0f);
42 Quaternion rotation{ 1.0f, 0.0f, 0.0f, 0.0f };
43 mutable Vector3 eulerRotation{ 0.0f };
44 mutable Matrix4x4 transform{ 0.0f };
45 mutable bool needTransformUpdate =
true;
46 mutable bool needRotationUpdate =
true;
47 mutable Matrix3x3 normalMatrix{ 0.0f };
49 const Matrix4x4& GetMatrix()
const;
50 const Matrix3x3& GetNormalMatrix()
const;
51 void GetMatrix(Matrix4x4& inPlaceMatrix)
const;
52 void GetNormalMatrix(
const Matrix4x4& model, Matrix3x3& inPlaceMatrix)
const;
54 const Vector3& GetTranslation()
const;
55 const Quaternion& GetRotation()
const;
56 const Vector3& GetScale()
const;
57 const Vector3& GetEulerRotation()
const;
58 const Vector3& GetPosition()
const;
60 Transform& SetTranslation(
const Vector3& dist);
61 Transform& SetRotation(
float angle,
const Vector3& axis);
62 Transform& SetRotation(
const Quaternion& q);
63 Transform& SetScale(
const Vector3& scale);
65 Transform& SetPosition(
const Vector3& position);
73 Transform& Rotate(
float angle,
const Vector3& axis);
79 Transform& Translate(
const Vector3& dist);
89 Transform& LookAtXY(
const Vector3& point);
90 Transform& LookAtXZ(
const Vector3& point);
91 Transform& LookAtYZ(
const Vector3& point);
Definition: Application.cpp:49