28 #ifndef HPL_PHYSICS_MATERIAL_H 29 #define HPL_PHYSICS_MATERIAL_H 31 #include "hpl1/engine/math/MathTypes.h" 43 enum ePhysicsMaterialCombMode {
45 ePhysicsMaterialCombMode_Average = 0,
47 ePhysicsMaterialCombMode_Min = 1,
49 ePhysicsMaterialCombMode_Multiply = 2,
51 ePhysicsMaterialCombMode_Max = 3,
53 ePhysicsMaterialCombMode_LastEnum
61 mfMaxContactNormalSpeed = 0;
62 mfMaxContactTangentSpeed = 0;
68 float mfMaxContactNormalSpeed;
69 float mfMaxContactTangentSpeed;
80 : msName(asName), mpWorld(apWorld), mpSurfaceData(NULL),
84 const tString &GetName()
const {
return msName; }
86 virtual void SetElasticity(
float afElasticity) = 0;
87 virtual float GetElasticity()
const = 0;
88 virtual void SetStaticFriction(
float afElasticity) = 0;
89 virtual float GetStaticFriction()
const = 0;
90 virtual void SetKineticFriction(
float afElasticity) = 0;
91 virtual float GetKineticFriction()
const = 0;
93 virtual void SetFrictionCombMode(ePhysicsMaterialCombMode aMode) = 0;
94 virtual ePhysicsMaterialCombMode GetFrictionCombMode()
const = 0;
95 virtual void SetElasticityCombMode(ePhysicsMaterialCombMode aMode) = 0;
96 virtual ePhysicsMaterialCombMode GetElasticityCombMode()
const = 0;
98 void SetSurfaceData(
cSurfaceData *apData) { mpSurfaceData = apData; }
101 void SetPreloaded(
bool abX) { mbPreloaded = abX; }
102 bool IsPreloaded() {
return mbPreloaded; }
115 #endif // HPL_PHYSICS_MATERIAL_H
Definition: PhysicsWorld.h:115
Definition: SurfaceData.h:74
Definition: PhysicsMaterial.h:77