44 (
Get<0>(_halfExtents) >= 0_r) && (
Get<1>(_halfExtents) >= 0_r) &&
45 (
Get<2>(_halfExtents) >= 0_r),
81 bool constexpr negX = (i / 4) % 2 == 0;
82 bool constexpr negY = (i / 2) % 2 == 0;
83 bool constexpr negZ = i % 2 == 0;
116inline constexpr bool IsPrimitiveShapeDef<Obb> =
true;
Real3 GetHalfExtents() const
VMatrix3x3r VGetRotation() const
Obb(MatrixTransformRT const &transform, Vec4r halfExtents)
Matrix3x3r GetRotation() const
Obb(MatrixTransformRT const &transform, Real3 const &halfExtents)
Vec4r VGetHalfExtents() const
Obb(TransformRT const &transform, Vec4r halfExtents)
NdArray< real, 8, 3 > GetCorners() const
MatrixTransformRT const & GetTransform() const
Obb(TransformRT const &transform, Real3 const &halfExtents)
NdArray< Vec4r, 8 > VGetCorners() const
#define MOCHI_ASSERT_VERBOSE(condition_without_side_effects,...)
Simd< T, 4 > ToSimd(NdArray< T, 2 > const &v, T z=T(0), T w=T(0))
NdArray< Simd< real, 4 >, 3 > VMatrix3x3r
Real3 ToReal3(Simd< T, 4 > v)
MatrixTransformRT ToMatrixTransformRT(TransformRT const &a)
NdArray< real, 3, 3 > Matrix3x3r
Simd< T, N > Neg(Simd< T, N > a)
#define MOCHI_FIELD_NAME(realName, customName)
#define MOCHI_STRUCT_END()
#define MOCHI_STRUCT_BEGIN(name)