diff --git a/lib/hkStubs/CMakeLists.txt b/lib/hkStubs/CMakeLists.txt index 2ab4e760..3cf15668 100644 --- a/lib/hkStubs/CMakeLists.txt +++ b/lib/hkStubs/CMakeLists.txt @@ -119,6 +119,7 @@ add_library(hkStubs OBJECT Havok/Physics2012/Collide/Shape/Convex/Capsule/hkpCapsuleShape.h Havok/Physics2012/Collide/Shape/Convex/ConvexTransform/hkpConvexTransformShape.h Havok/Physics2012/Collide/Shape/Convex/Cylinder/hkpCylinderShape.h + Havok/Physics2012/Collide/Shape/Convex/Sphere/hkpSphereShape.h Havok/Physics2012/Collide/Shape/HeightField/hkpHeightFieldShape.h Havok/Physics2012/Collide/Shape/HeightField/hkpSphereRepShape.h Havok/Physics2012/Collide/Shape/HeightField/Plane/hkpPlaneShape.h diff --git a/lib/hkStubs/Havok/Physics2012/Collide/Shape/Convex/Sphere/hkpSphereShape.h b/lib/hkStubs/Havok/Physics2012/Collide/Shape/Convex/Sphere/hkpSphereShape.h new file mode 100644 index 00000000..a1b4067a --- /dev/null +++ b/lib/hkStubs/Havok/Physics2012/Collide/Shape/Convex/Sphere/hkpSphereShape.h @@ -0,0 +1,33 @@ +#pragma once + +#include + +class hkpSphereShape : public hkpConvexShape { +public: + HK_DECLARE_CLASS_ALLOCATOR(hkpSphereShape) + HK_DECLARE_REFLECTION() + HKCD_DECLARE_SHAPE_TYPE(hkcdShapeType::SPHERE) + + HK_FORCE_INLINE hkpSphereShape() {} + explicit hkpSphereShape(hkReal radius); + explicit hkpSphereShape(hkFinishLoadedObjectFlag flag); + + HK_FORCE_INLINE void getSupportingVertex(hkVector4Parameter direction, + hkcdVertex& supportingVertexOut) const override; + HK_FORCE_INLINE void convertVertexIdsToVertices(const hkpVertexId* ids, int numIds, + hkcdVertex* verticesOut) const override; + HK_FORCE_INLINE void getCentre(hkVector4& centreOut) const override; + HK_FORCE_INLINE int getNumCollisionSpheres() const override; + HK_FORCE_INLINE const hkSphere* getCollisionSpheres(hkSphere* sphereBuffer) const override; + HK_FORCE_INLINE void getAabb(const hkTransform& localToWorld, hkReal tolerance, + hkAabb& out) const override; + hkBool castRay(const hkpShapeRayCastInput& input, + hkpShapeRayCastOutput& results) const override; + hkVector4Comparison castRayBundle(const hkpShapeRayBundleCastInput& input, + hkpShapeRayBundleCastOutput& results, + hkVector4ComparisonParameter mask) const override; + void getFirstVertex(hkVector4& v) const override; + +private: + hkUint32 m_pad16[3]; +};