orx 1.16
Portable Game Engine
Loading...
Searching...
No Matches
orxPhysics.h File Reference
#include "orxInclude.h"
#include "plugin/orxPluginCore.h"
#include "math/orxAABox.h"

Go to the source code of this file.

Data Structures

struct  orxBODY_DEF
struct  orxBODY_JOINT_DEF
struct  orxBODY_PART_DEF
struct  orxPHYSICS_EVENT_PAYLOAD

Macros

#define orxBODY_DEF_KU32_FLAG_2D   0x00000001
#define orxBODY_DEF_KU32_FLAG_ALLOW_SLEEP   0x00000020
#define orxBODY_DEF_KU32_FLAG_CAN_MOVE   0x00000010
#define orxBODY_DEF_KU32_FLAG_DYNAMIC   0x00000002
#define orxBODY_DEF_KU32_FLAG_FIXED_ROTATION   0x00000008
#define orxBODY_DEF_KU32_FLAG_HIGH_SPEED   0x00000004
#define orxBODY_DEF_KU32_FLAG_NONE   0x00000000
#define orxBODY_DEF_KU32_MASK_ALL   0xFFFFFFFF
#define orxBODY_JOINT_DEF_KU32_FLAG_COLLIDE   0x10000000
#define orxBODY_JOINT_DEF_KU32_FLAG_FRICTION   0x00000080
#define orxBODY_JOINT_DEF_KU32_FLAG_GEAR   0x00000100
#define orxBODY_JOINT_DEF_KU32_FLAG_MOTOR   0x40000000
#define orxBODY_JOINT_DEF_KU32_FLAG_NONE   0x00000000
#define orxBODY_JOINT_DEF_KU32_FLAG_PRISMATIC   0x00000002
#define orxBODY_JOINT_DEF_KU32_FLAG_PULLEY   0x00000010
#define orxBODY_JOINT_DEF_KU32_FLAG_REVOLUTE   0x00000001
#define orxBODY_JOINT_DEF_KU32_FLAG_ROPE   0x00000008
#define orxBODY_JOINT_DEF_KU32_FLAG_ROTATION_LIMIT   0x20000000
#define orxBODY_JOINT_DEF_KU32_FLAG_SPRING   0x00000004
#define orxBODY_JOINT_DEF_KU32_FLAG_SUSPENSION   0x00000020
#define orxBODY_JOINT_DEF_KU32_FLAG_TRANSLATION_LIMIT   0x80000000
#define orxBODY_JOINT_DEF_KU32_FLAG_WELD   0x00000040
#define orxBODY_JOINT_DEF_KU32_MASK_ALL   0xFFFFFFFF
#define orxBODY_JOINT_DEF_KU32_MASK_TYPE   0x00000FFF
#define orxBODY_PART_DEF_KU32_FLAG_BOX   0x00000002
#define orxBODY_PART_DEF_KU32_FLAG_CHAIN   0x00000010
#define orxBODY_PART_DEF_KU32_FLAG_EDGE   0x00000008
#define orxBODY_PART_DEF_KU32_FLAG_MESH   0x00000004
#define orxBODY_PART_DEF_KU32_FLAG_NONE   0x00000000
#define orxBODY_PART_DEF_KU32_FLAG_SOLID   0x10000000
#define orxBODY_PART_DEF_KU32_FLAG_SPHERE   0x00000001
#define orxBODY_PART_DEF_KU32_MASK_ALL   0xFFFFFFFF
#define orxBODY_PART_DEF_KU32_MASK_TYPE   0x0000001F
#define orxBODY_PART_DEF_KU32_MESH_VERTEX_NUMBER   8
#define orxPHYSICS_KZ_CONFIG_ALLOW_SLEEP   "AllowSleep"
#define orxPHYSICS_KZ_CONFIG_COLLISION_FLAG_LIST   "CollisionFlagList"
#define orxPHYSICS_KZ_CONFIG_GRAVITY   "Gravity"
#define orxPHYSICS_KZ_CONFIG_INTERPOLATE   "Interpolate"
#define orxPHYSICS_KZ_CONFIG_ITERATIONS   "IterationsPerStep"
#define orxPHYSICS_KZ_CONFIG_RATIO   "DimensionRatio"
#define orxPHYSICS_KZ_CONFIG_SECTION   "Physics"
#define orxPHYSICS_KZ_CONFIG_SHOW_DEBUG   "ShowDebug"
#define orxPHYSICS_KZ_CONFIG_STEP_FREQUENCY   "StepFrequency"

Typedefs

typedef struct __orxPHYSICS_BODY_t orxPHYSICS_BODY
typedef struct __orxPHYSICS_BODY_JOINT_t orxPHYSICS_BODY_JOINT
typedef struct __orxPHYSICS_BODY_PART_t orxPHYSICS_BODY_PART

Enumerations

enum  orxPHYSICS_EVENT { orxPHYSICS_EVENT_CONTACT_ADD = 0 , orxPHYSICS_EVENT_CONTACT_REMOVE , orxPHYSICS_EVENT_NUMBER , orxPHYSICS_EVENT_NONE = orxENUM_NONE }

Functions

orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_ApplyForce (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvForce, const orxVECTOR *_pvPoint)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_ApplyImpulse (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvImpulse, const orxVECTOR *_pvPoint)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_ApplyTorque (orxPHYSICS_BODY *_pstBody, orxFLOAT _fTorque)
orxDLLAPI orxU32 orxFASTCALL orxPhysics_BoxPick (const orxAABOX *_pstBox, orxU16 _u16SelfFlags, orxU16 _u16CheckMask, orxHANDLE _ahUserDataList[], orxU32 _u32Number)
orxDLLAPI orxPHYSICS_BODY *orxFASTCALL orxPhysics_CreateBody (const orxHANDLE _hUserData, const orxBODY_DEF *_pstBodyDef)
orxDLLAPI orxPHYSICS_BODY_JOINT *orxFASTCALL orxPhysics_CreateJoint (orxPHYSICS_BODY *_pstSrcBody, orxPHYSICS_BODY *_pstDstBody, const orxHANDLE _hUserData, const orxBODY_JOINT_DEF *_pstBodyJointDef)
orxDLLAPI orxPHYSICS_BODY_PART *orxFASTCALL orxPhysics_CreatePart (orxPHYSICS_BODY *_pstBody, const orxHANDLE _hUserData, const orxBODY_PART_DEF *_pstBodyPartDef)
orxDLLAPI void orxFASTCALL orxPhysics_DeleteBody (orxPHYSICS_BODY *_pstBody)
orxDLLAPI void orxFASTCALL orxPhysics_DeleteJoint (orxPHYSICS_BODY_JOINT *_pstBodyJoint)
orxDLLAPI void orxFASTCALL orxPhysics_DeletePart (orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI void orxFASTCALL orxPhysics_EnableMotor (orxPHYSICS_BODY_JOINT *_pstBodyJoint, orxBOOL _bEnable)
orxDLLAPI void orxFASTCALL orxPhysics_EnableSimulation (orxBOOL _bEnable)
orxDLLAPI void orxFASTCALL orxPhysics_Exit ()
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetAngularDamping (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetAngularVelocity (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI const orxSTRING orxFASTCALL orxPhysics_GetCollisionFlagName (orxU32 _u32Flag)
orxDLLAPI orxU32 orxFASTCALL orxPhysics_GetCollisionFlagValue (const orxSTRING _zFlag)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetCustomGravity (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvCustomGravity)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetGravity (orxVECTOR *_pvGravity)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetJointReactionForce (const orxPHYSICS_BODY_JOINT *_pstBodyJoint, orxVECTOR *_pvForce)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetJointReactionTorque (const orxPHYSICS_BODY_JOINT *_pstBodyJoint)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetLinearDamping (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetMass (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetMassCenter (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvMassCenter)
orxDLLAPI orxU16 orxFASTCALL orxPhysics_GetPartCheckMask (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetPartDensity (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetPartFriction (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetPartRestitution (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxU16 orxFASTCALL orxPhysics_GetPartSelfFlags (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetPosition (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvPosition)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetRotation (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetSpeed (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvSpeed)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetSpeedAtWorldPosition (const orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvPosition, orxVECTOR *_pvSpeed)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_Init ()
orxDLLAPI orxBOOL orxFASTCALL orxPhysics_IsFixedRotation (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI orxBOOL orxFASTCALL orxPhysics_IsInsidePart (const orxPHYSICS_BODY_PART *_pstBodyPart, const orxVECTOR *_pvPosition)
orxDLLAPI orxBOOL orxFASTCALL orxPhysics_IsPartSolid (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxHANDLE orxFASTCALL orxPhysics_Raycast (const orxVECTOR *_pvBegin, const orxVECTOR *_pvEnd, orxU16 _u16SelfFlags, orxU16 _u16CheckMask, orxBOOL _bEarlyExit, orxVECTOR *_pvContact, orxVECTOR *_pvNormal)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetAllowMoving (orxPHYSICS_BODY *_pstBody, orxBOOL _bAllowMoving)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetAngularDamping (orxPHYSICS_BODY *_pstBody, orxFLOAT _fDamping)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetAngularVelocity (orxPHYSICS_BODY *_pstBody, orxFLOAT _fVelocity)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetCustomGravity (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvCustomGravity)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetDynamic (orxPHYSICS_BODY *_pstBody, orxBOOL _bDynamic)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetFixedRotation (orxPHYSICS_BODY *_pstBody, orxBOOL _bFixed)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetGravity (const orxVECTOR *_pvGravity)
orxDLLAPI void orxFASTCALL orxPhysics_SetJointMaxMotorTorque (orxPHYSICS_BODY_JOINT *_pstBodyJoint, orxFLOAT _fMaxTorque)
orxDLLAPI void orxFASTCALL orxPhysics_SetJointMotorSpeed (orxPHYSICS_BODY_JOINT *_pstBodyJoint, orxFLOAT _fSpeed)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetLinearDamping (orxPHYSICS_BODY *_pstBody, orxFLOAT _fDamping)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPartCheckMask (orxPHYSICS_BODY_PART *_pstBodyPart, orxU16 _u16CheckMask)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPartDensity (orxPHYSICS_BODY_PART *_pstBodyPart, orxFLOAT _fDensity)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPartFriction (orxPHYSICS_BODY_PART *_pstBodyPart, orxFLOAT _fFriction)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPartRestitution (orxPHYSICS_BODY_PART *_pstBodyPart, orxFLOAT _fRestitution)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPartSelfFlags (orxPHYSICS_BODY_PART *_pstBodyPart, orxU16 _u16SelfFlags)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPartSolid (orxPHYSICS_BODY_PART *_pstBodyPart, orxBOOL _bSolid)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetPosition (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvPosition)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetRotation (orxPHYSICS_BODY *_pstBody, orxFLOAT _fRotation)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetSpeed (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvSpeed)
orxDLLAPI void orxFASTCALL orxPhysics_Setup ()

Detailed Description


Generated for orx by doxygen 1.8.11