From 2f84387b1ac29f1ce9d6c92422725cfc020b1e24 Mon Sep 17 00:00:00 2001
From: THoehne <77296181+THoehne@users.noreply.github.com>
Date: Wed, 2 Oct 2024 14:19:03 +0200
Subject: [PATCH] Add Constructor with TVector3 and a Real w.
---
Engine/Source/Runtime/Core/public/Math/Vector4.hpp | 8 ++++++++
Engine/Source/Runtime/Core/public/Math/Vector4.inl | 6 ++++++
2 files changed, 14 insertions(+)
diff --git a/Engine/Source/Runtime/Core/public/Math/Vector4.hpp b/Engine/Source/Runtime/Core/public/Math/Vector4.hpp
index 2a76a15..8f7404f 100644
--- a/Engine/Source/Runtime/Core/public/Math/Vector4.hpp
+++ b/Engine/Source/Runtime/Core/public/Math/Vector4.hpp
@@ -8,6 +8,7 @@
#include "Core/public/Math/Vector2.hpp"
+#include "Core/public/Math/Vector3.hpp"
#define PZeroVector4(type, aligned) Phanes::Core::Math::TVector4<##type, ##aligned>(0,0,0,0)
@@ -86,6 +87,13 @@ namespace Phanes::Core::Math
/// TVector2 two
TVector4(const TVector2& v1, const TVector2& v2);
+ ///
+ /// Construct vector from 3d vector (x,y,z) and w
+ ///
+ /// TVector3
+ /// W
+ TVector4(const TVector3& v1, Real w);
+
///
/// Construct vector from array of components
///
diff --git a/Engine/Source/Runtime/Core/public/Math/Vector4.inl b/Engine/Source/Runtime/Core/public/Math/Vector4.inl
index b6c8e32..728160a 100644
--- a/Engine/Source/Runtime/Core/public/Math/Vector4.inl
+++ b/Engine/Source/Runtime/Core/public/Math/Vector4.inl
@@ -35,6 +35,12 @@ namespace Phanes::Core::Math
Detail::construct_vec4::map(*this, comp);
}
+ template
+ Phanes::Core::Math::TVector4::TVector4(const TVector3& v, T w)
+ {
+ Detail::construct_vec4::map(*this, v, w);
+ }
+
template
TVector4& operator+=(TVector4& v1, const TVector4& v2)