mirror of https://github.com/zeldaret/botw.git
				
				
				
			Havok: Add hkpCdPointCollector
This commit is contained in:
		
							parent
							
								
									6830bcbb64
								
							
						
					
					
						commit
						d6e7f6b93e
					
				| 
						 | 
				
			
			@ -93,6 +93,7 @@ add_library(hkStubs OBJECT
 | 
			
		|||
  Havok/Physics2012/Collide/Agent/Collidable/hkpCollidable.h
 | 
			
		||||
  Havok/Physics2012/Collide/Agent/Collidable/hkpCollidableQualityType.h
 | 
			
		||||
  Havok/Physics2012/Collide/Agent/ContactMgr/hkpContactMgr.h
 | 
			
		||||
  Havok/Physics2012/Collide/Agent/Query/hkpCdPointCollector.h
 | 
			
		||||
  Havok/Physics2012/Collide/Agent3/BvTree3/hkpBvTreeAgent3.h
 | 
			
		||||
  Havok/Physics2012/Collide/Agent3/Machine/Nn/hkpAgentNnTrack.h
 | 
			
		||||
  Havok/Physics2012/Collide/Agent3/Machine/Nn/hkpLinkedCollidable.h
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,33 @@
 | 
			
		|||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <cfloat>
 | 
			
		||||
 | 
			
		||||
#define HK_FLOAT_PI 3.14159265358979f
 | 
			
		||||
#define HK_FLOAT_DEG_TO_RAD (HK_FLOAT_PI / 180.0f)
 | 
			
		||||
#define HK_FLOAT_RAD_TO_DEG (180.0f / HK_FLOAT_PI)
 | 
			
		||||
#define HK_FLOAT_EPSILON FLT_EPSILON
 | 
			
		||||
#define HK_FLOAT_MIN FLT_MIN
 | 
			
		||||
#define HK_FLOAT_MAX 3.40282e+38f
 | 
			
		||||
#define HK_FLOAT_HIGH 1.8446726e+019f
 | 
			
		||||
 | 
			
		||||
#if defined(HK_REAL_IS_DOUBLE)
 | 
			
		||||
#define HK_REAL_PI HK_DOUBLE_PI
 | 
			
		||||
#define HK_REAL_DEG_TO_RAD HK_DOUBLE_DEG_TO_RAD
 | 
			
		||||
#define HK_REAL_RAD_TO_DEG HK_DOUBLE_RAD_TO_DEG
 | 
			
		||||
#define HK_REAL_EPSILON HK_DOUBLE_EPSILON
 | 
			
		||||
#define HK_REAL_MIN HK_DOUBLE_MIN
 | 
			
		||||
#define HK_REAL_MAX HK_DOUBLE_MAX
 | 
			
		||||
#define HK_REAL_HIGH HK_DOUBLE_HIGH
 | 
			
		||||
#else
 | 
			
		||||
#define HK_REAL_PI HK_FLOAT_PI
 | 
			
		||||
#define HK_REAL_DEG_TO_RAD HK_FLOAT_DEG_TO_RAD
 | 
			
		||||
#define HK_REAL_RAD_TO_DEG HK_FLOAT_RAD_TO_DEG
 | 
			
		||||
#define HK_REAL_EPSILON HK_FLOAT_EPSILON
 | 
			
		||||
#define HK_REAL_MIN HK_FLOAT_MIN
 | 
			
		||||
#define HK_REAL_MAX HK_FLOAT_MAX
 | 
			
		||||
#define HK_REAL_HIGH HK_FLOAT_HIGH
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
enum hkVectorConstant {
 | 
			
		||||
    HK_QUADREAL_BEGIN,
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,34 @@
 | 
			
		|||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <Havok/Common/Base/hkBase.h>
 | 
			
		||||
 | 
			
		||||
struct hkpCdPoint;
 | 
			
		||||
 | 
			
		||||
class hkpCdPointCollector {
 | 
			
		||||
public:
 | 
			
		||||
    HK_DECLARE_CLASS_ALLOCATOR(hkpCdPointCollector)
 | 
			
		||||
 | 
			
		||||
    inline hkpCdPointCollector();
 | 
			
		||||
    inline virtual ~hkpCdPointCollector() = default;
 | 
			
		||||
 | 
			
		||||
    virtual void addCdPoint(const hkpCdPoint& point) = 0;
 | 
			
		||||
 | 
			
		||||
    inline virtual void reset();
 | 
			
		||||
 | 
			
		||||
    inline hkReal getEarlyOutDistance() const;
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
    hkReal m_earlyOutDistance;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
inline hkpCdPointCollector::hkpCdPointCollector() {
 | 
			
		||||
    reset();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
inline void hkpCdPointCollector::reset() {
 | 
			
		||||
    m_earlyOutDistance = HK_REAL_MAX;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
inline hkReal hkpCdPointCollector::getEarlyOutDistance() const {
 | 
			
		||||
    return m_earlyOutDistance;
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
		Reference in New Issue