Havok: Add hkpSphereShape

This commit is contained in:
Léo Lam 2022-02-05 01:39:43 +01:00
parent 0e00e340ee
commit 5071567731
No known key found for this signature in database
GPG Key ID: 0DF30F9081000741
2 changed files with 34 additions and 0 deletions

View File

@ -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

View File

@ -0,0 +1,33 @@
#pragma once
#include <Havok/Physics2012/Collide/Shape/Convex/hkpConvexShape.h>
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];
};