Data Structures | Defines | Typedefs | Enumerations | Functions

include/physics/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

Defines

#define orxBODY_DEF_KU32_FLAG_2D   0x00000001
#define orxBODY_DEF_KU32_FLAG_ALLOW_SLEEP   0x00000040
#define orxBODY_DEF_KU32_FLAG_CAN_MOVE   0x00000020
#define orxBODY_DEF_KU32_FLAG_CAN_SLIDE   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   0x000000FF
#define orxBODY_PART_DEF_KU32_FLAG_BOX   0x00000002
#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   0x00000007
#define orxBODY_PART_DEF_KU32_MESH_VERTEX_NUMBER   8
#define orxPHYSICS_KZ_CONFIG_ALLOW_SLEEP   "AllowSleep"
#define orxPHYSICS_KZ_CONFIG_FIXED_DT   "FixedDT"
#define orxPHYSICS_KZ_CONFIG_FREQUENCY   "SimulationFrequency"
#define orxPHYSICS_KZ_CONFIG_GRAVITY   "Gravity"
#define orxPHYSICS_KZ_CONFIG_ITERATIONS   "IterationsPerStep"
#define orxPHYSICS_KZ_CONFIG_RATIO   "DimensionRatio"
#define orxPHYSICS_KZ_CONFIG_SECTION   "Physics"

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 orxPHYSICS_BODY
*orxFASTCALL 
orxPhysics_CreateBody (const orxHANDLE _hUserData, const orxBODY_DEF *_pstBodyDef)
orxDLLAPI
orxPHYSICS_BODY_JOINT
*orxFASTCALL 
orxPhysics_CreateBodyJoint (orxPHYSICS_BODY *_pstSrcBody, orxPHYSICS_BODY *_pstDstBody, const orxHANDLE _hUserData, const orxBODY_JOINT_DEF *_pstBodyJointDef)
orxDLLAPI orxPHYSICS_BODY_PART
*orxFASTCALL 
orxPhysics_CreateBodyPart (orxPHYSICS_BODY *_pstBody, const orxHANDLE _hUserData, const orxBODY_PART_DEF *_pstBodyPartDef)
orxDLLAPI void orxFASTCALL orxPhysics_DeleteBody (orxPHYSICS_BODY *_pstBody)
orxDLLAPI void orxFASTCALL orxPhysics_DeleteBodyJoint (orxPHYSICS_BODY_JOINT *_pstBodyJoint)
orxDLLAPI void orxFASTCALL orxPhysics_DeleteBodyPart (orxPHYSICS_BODY_PART *_pstBodyPart)
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 orxU16 orxFASTCALL orxPhysics_GetCheckMask (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetCustomGravity (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvCustomGravity)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetGravity (orxVECTOR *_pvGravity)
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 orxVECTOR *orxFASTCALL orxPhysics_GetPosition (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvPosition)
orxDLLAPI orxFLOAT orxFASTCALL orxPhysics_GetRotation (const orxPHYSICS_BODY *_pstBody)
orxDLLAPI orxU16 orxFASTCALL orxPhysics_GetSelfFlags (const orxPHYSICS_BODY_PART *_pstBodyPart)
orxDLLAPI orxVECTOR *orxFASTCALL orxPhysics_GetSpeed (const orxPHYSICS_BODY *_pstBody, orxVECTOR *_pvSpeed)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_Init ()
orxDLLAPI orxHANDLE orxFASTCALL orxPhysics_Raycast (const orxVECTOR *_pvStart, const orxVECTOR *_pvEnd, orxU16 _u16SelfFlags, orxU16 _u16CheckMask, orxBOOL _bEarlyExit, orxVECTOR *_pvContact, orxVECTOR *_pvNormal)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetAngularDamping (orxPHYSICS_BODY *_pstBody, orxFLOAT _fDamping)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetAngularVelocity (orxPHYSICS_BODY *_pstBody, orxFLOAT _fVelocity)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetCheckMask (orxPHYSICS_BODY_PART *_pstBodyPart, orxU16 _u16CheckMask)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetCustomGravity (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvCustomGravity)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetGravity (const orxVECTOR *_pvGravity)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetLinearDamping (orxPHYSICS_BODY *_pstBody, orxFLOAT _fDamping)
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_SetSelfFlags (orxPHYSICS_BODY_PART *_pstBodyPart, orxU16 _u16SelfFlags)
orxDLLAPI orxSTATUS orxFASTCALL orxPhysics_SetSpeed (orxPHYSICS_BODY *_pstBody, const orxVECTOR *_pvSpeed)
orxDLLAPI void orxFASTCALL orxPhysics_Setup ()

Detailed Description

Date:
24/03/2008
Author:
iarwain@orx-project.org
Todo:

Definition in file orxPhysics.h.


Generated for orx by doxygen 1.5.6