bugfixes
This commit is contained in:
@@ -78,7 +78,7 @@ namespace OpenVulkano::Math
|
|||||||
public:
|
public:
|
||||||
constexpr explicit DenseVector3i(const Math::Vector3i& vec3) : DenseVector3i(vec3.x, vec3.y, vec3.z) {}
|
constexpr explicit DenseVector3i(const Math::Vector3i& vec3) : DenseVector3i(vec3.x, vec3.y, vec3.z) {}
|
||||||
constexpr explicit DenseVector3i(const Math::Vector3i_SIMD& vec3) : DenseVector3i(vec3.x, vec3.y, vec3.z) {}
|
constexpr explicit DenseVector3i(const Math::Vector3i_SIMD& vec3) : DenseVector3i(vec3.x, vec3.y, vec3.z) {}
|
||||||
constexpr DenseVector3i(int x, int y, int z)
|
constexpr DenseVector3i(T x, T y, T z)
|
||||||
: data((x & BITMASK) | ((y & BITMASK) << (2 * BITS)) | ((z & BITMASK) << BITS))
|
: data((x & BITMASK) | ((y & BITMASK) << (2 * BITS)) | ((z & BITMASK) << BITS))
|
||||||
{
|
{
|
||||||
AssertValue(x);
|
AssertValue(x);
|
||||||
@@ -88,9 +88,9 @@ namespace OpenVulkano::Math
|
|||||||
|
|
||||||
constexpr T Data() const { return data; }
|
constexpr T Data() const { return data; }
|
||||||
|
|
||||||
[[nodiscard]] constexpr int X() const { int v = data & BITMASK; if (v > MAX_VALUE) v |= ~BITMASK; return reinterpret_cast<int&>(v); }
|
[[nodiscard]] constexpr int X() const { T v = data & BITMASK; if (v > MAX_VALUE) v |= ~BITMASK; return reinterpret_cast<int&>(v); }
|
||||||
[[nodiscard]] constexpr int Y() const { int v = (data >> (2 * BITS)) & BITMASK; if (v > MAX_VALUE_Y) v |= ~BITMASK; return reinterpret_cast<int&>(v); }
|
[[nodiscard]] constexpr int Y() const { T v = (data >> (2 * BITS)) & BITMASK; if (v > MAX_VALUE_Y) v |= ~BITMASK; return reinterpret_cast<int&>(v); }
|
||||||
[[nodiscard]] constexpr int Z() const { int v = (data >> BITS) & BITMASK; if (v > MAX_VALUE) v |= ~BITMASK; return reinterpret_cast<int&>(v); }
|
[[nodiscard]] constexpr int Z() const { T v = (data >> BITS) & BITMASK; if (v > MAX_VALUE) v |= ~BITMASK; return reinterpret_cast<int&>(v); }
|
||||||
|
|
||||||
void SetX(int x)
|
void SetX(int x)
|
||||||
{
|
{
|
||||||
@@ -120,7 +120,7 @@ namespace OpenVulkano::Math
|
|||||||
return fmt::format("{},{},{}", X(), Y(), Z());
|
return fmt::format("{},{},{}", X(), Y(), Z());
|
||||||
}
|
}
|
||||||
|
|
||||||
[[nodiscard]] constexpr operator T() const { return data; }
|
//[[nodiscard]] constexpr operator T() const { return data; }
|
||||||
|
|
||||||
[[nodiscard]] constexpr bool operator <(DenseVec3 rhs) const
|
[[nodiscard]] constexpr bool operator <(DenseVec3 rhs) const
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user