Blender  V3.3
Classes | Typedefs | Enumerations
DNA_rigidbody_types.h File Reference

Types and defines for representing Rigid Body entities. More...

#include "DNA_listBase.h"
#include "DNA_object_force_types.h"

Go to the source code of this file.

Classes

struct  RigidBodyWorld_Shared
 
struct  RigidBodyWorld
 
struct  RigidBodyOb_Shared
 
struct  RigidBodyOb
 
struct  RigidBodyCon
 

Typedefs

typedef struct RigidBodyWorld_Shared RigidBodyWorld_Shared
 
typedef struct RigidBodyWorld RigidBodyWorld
 
typedef enum eRigidBodyWorld_Flag eRigidBodyWorld_Flag
 
typedef struct RigidBodyOb_Shared RigidBodyOb_Shared
 
typedef struct RigidBodyOb RigidBodyOb
 
typedef enum eRigidBodyOb_Type eRigidBodyOb_Type
 
typedef enum eRigidBodyOb_Flag eRigidBodyOb_Flag
 
typedef enum eRigidBody_Shape eRigidBody_Shape
 
typedef enum eRigidBody_MeshSource eRigidBody_MeshSource
 
typedef struct RigidBodyCon RigidBodyCon
 
typedef enum eRigidBodyCon_Type eRigidBodyCon_Type
 
typedef enum eRigidBodyCon_SpringType eRigidBodyCon_SpringType
 
typedef enum eRigidBodyCon_Flag eRigidBodyCon_Flag
 

Enumerations

enum  eRigidBodyWorld_Flag { RBW_FLAG_MUTED = (1 << 0) , RBW_FLAG_USE_SPLIT_IMPULSE = (1 << 2) }
 
enum  eRigidBodyOb_Type { RBO_TYPE_ACTIVE = 0 , RBO_TYPE_PASSIVE = 1 }
 
enum  eRigidBodyOb_Flag {
  RBO_FLAG_KINEMATIC = (1 << 0) , RBO_FLAG_NEEDS_VALIDATE = (1 << 1) , RBO_FLAG_NEEDS_RESHAPE = (1 << 2) , RBO_FLAG_USE_DEACTIVATION = (1 << 3) ,
  RBO_FLAG_START_DEACTIVATED = (1 << 4) , RBO_FLAG_DISABLED = (1 << 5) , RBO_FLAG_USE_MARGIN = (1 << 6) , RBO_FLAG_USE_DEFORM = (1 << 7)
}
 
enum  eRigidBody_Shape {
  RB_SHAPE_BOX = 0 , RB_SHAPE_SPHERE = 1 , RB_SHAPE_CAPSULE = 2 , RB_SHAPE_CYLINDER = 3 ,
  RB_SHAPE_CONE = 4 , RB_SHAPE_CONVEXH = 5 , RB_SHAPE_TRIMESH = 6 , RB_SHAPE_COMPOUND = 7
}
 
enum  eRigidBody_MeshSource { RBO_MESH_BASE = 0 , RBO_MESH_DEFORM = 1 , RBO_MESH_FINAL = 2 }
 
enum  eRigidBodyCon_Type {
  RBC_TYPE_POINT = 0 , RBC_TYPE_HINGE = 1 , RBC_TYPE_SLIDER = 3 , RBC_TYPE_6DOF = 5 ,
  RBC_TYPE_6DOF_SPRING = 6 , RBC_TYPE_FIXED = 8 , RBC_TYPE_PISTON = 9 , RBC_TYPE_MOTOR = 11
}
 
enum  eRigidBodyCon_SpringType { RBC_SPRING_TYPE1 = 0 , RBC_SPRING_TYPE2 = 1 }
 
enum  eRigidBodyCon_Flag {
  RBC_FLAG_ENABLED = (1 << 0) , RBC_FLAG_NEEDS_VALIDATE = (1 << 1) , RBC_FLAG_DISABLE_COLLISIONS = (1 << 2) , RBC_FLAG_USE_BREAKING = (1 << 3) ,
  RBC_FLAG_OVERRIDE_SOLVER_ITERATIONS = (1 << 4) , RBC_FLAG_USE_LIMIT_LIN_X = (1 << 5) , RBC_FLAG_USE_LIMIT_LIN_Y = (1 << 6) , RBC_FLAG_USE_LIMIT_LIN_Z = (1 << 7) ,
  RBC_FLAG_USE_LIMIT_ANG_X = (1 << 8) , RBC_FLAG_USE_LIMIT_ANG_Y = (1 << 9) , RBC_FLAG_USE_LIMIT_ANG_Z = (1 << 10) , RBC_FLAG_USE_SPRING_X = (1 << 11) ,
  RBC_FLAG_USE_SPRING_Y = (1 << 12) , RBC_FLAG_USE_SPRING_Z = (1 << 13) , RBC_FLAG_USE_MOTOR_LIN = (1 << 14) , RBC_FLAG_USE_MOTOR_ANG = (1 << 15) ,
  RBC_FLAG_USE_SPRING_ANG_X = (1 << 16) , RBC_FLAG_USE_SPRING_ANG_Y = (1 << 17) , RBC_FLAG_USE_SPRING_ANG_Z = (1 << 18)
}
 

Detailed Description

Types and defines for representing Rigid Body entities.

Definition in file DNA_rigidbody_types.h.

Typedef Documentation

◆ eRigidBody_MeshSource

◆ eRigidBody_Shape

Rigid Body Collision Shape.

◆ eRigidBodyCon_Flag

◆ eRigidBodyCon_SpringType

Spring implementation type for RigidBodyOb.

◆ eRigidBodyCon_Type

Participation types for RigidBodyOb.type

◆ eRigidBodyOb_Flag

◆ eRigidBodyOb_Type

◆ eRigidBodyWorld_Flag

◆ RigidBodyCon

typedef struct RigidBodyCon RigidBodyCon

◆ RigidBodyOb

typedef struct RigidBodyOb RigidBodyOb

◆ RigidBodyOb_Shared

◆ RigidBodyWorld

◆ RigidBodyWorld_Shared

Container for data shared by original and evaluated copies of RigidBodyWorld.

Enumeration Type Documentation

◆ eRigidBody_MeshSource

Enumerator
RBO_MESH_BASE 
RBO_MESH_DEFORM 
RBO_MESH_FINAL 

Definition at line 207 of file DNA_rigidbody_types.h.

◆ eRigidBody_Shape

Rigid Body Collision Shape.

Enumerator
RB_SHAPE_BOX 

Simple box (i.e. bounding box).

RB_SHAPE_SPHERE 

Sphere.

RB_SHAPE_CAPSULE 

Rounded "pill" shape (i.e. calcium tablets).

RB_SHAPE_CYLINDER 

Cylinder (i.e. tin of beans).

RB_SHAPE_CONE 

Cone (i.e. party hat).

RB_SHAPE_CONVEXH 

Convex hull (minimal shrink-wrap encompassing all verts).

RB_SHAPE_TRIMESH 

Triangulated mesh.

RB_SHAPE_COMPOUND 

Definition at line 186 of file DNA_rigidbody_types.h.

◆ eRigidBodyCon_Flag

RigidBodyCon.flag

Enumerator
RBC_FLAG_ENABLED 
RBC_FLAG_NEEDS_VALIDATE 
RBC_FLAG_DISABLE_COLLISIONS 
RBC_FLAG_USE_BREAKING 
RBC_FLAG_OVERRIDE_SOLVER_ITERATIONS 
RBC_FLAG_USE_LIMIT_LIN_X 
RBC_FLAG_USE_LIMIT_LIN_Y 
RBC_FLAG_USE_LIMIT_LIN_Z 
RBC_FLAG_USE_LIMIT_ANG_X 
RBC_FLAG_USE_LIMIT_ANG_Y 
RBC_FLAG_USE_LIMIT_ANG_Z 
RBC_FLAG_USE_SPRING_X 
RBC_FLAG_USE_SPRING_Y 
RBC_FLAG_USE_SPRING_Z 
RBC_FLAG_USE_MOTOR_LIN 
RBC_FLAG_USE_MOTOR_ANG 
RBC_FLAG_USE_SPRING_ANG_X 
RBC_FLAG_USE_SPRING_ANG_Y 
RBC_FLAG_USE_SPRING_ANG_Z 

Definition at line 327 of file DNA_rigidbody_types.h.

◆ eRigidBodyCon_SpringType

Spring implementation type for RigidBodyOb.

Enumerator
RBC_SPRING_TYPE1 
RBC_SPRING_TYPE2 

Definition at line 321 of file DNA_rigidbody_types.h.

◆ eRigidBodyCon_Type

Participation types for RigidBodyOb.type

Enumerator
RBC_TYPE_POINT 

lets bodies rotate around a specified point

RBC_TYPE_HINGE 

lets bodies rotate around a specified axis

RBC_TYPE_SLIDER 

simulates wheel suspension Restricts moment to a specified axis.

RBC_TYPE_6DOF 

lets object rotate within a specified cone allows user to specify constraint axes

RBC_TYPE_6DOF_SPRING 

like 6DOF but has springs

RBC_TYPE_FIXED 

simulates a universal joint glues two bodies together

RBC_TYPE_PISTON 

similar to slider but also allows rotation around slider axis

RBC_TYPE_MOTOR 

Simplified spring constraint with only once axis that's automatically placed between the connected bodies Drives bodies by applying linear and angular forces.

Definition at line 292 of file DNA_rigidbody_types.h.

◆ eRigidBodyOb_Flag

RigidBodyOb.flag

Enumerator
RBO_FLAG_KINEMATIC 
RBO_FLAG_NEEDS_VALIDATE 
RBO_FLAG_NEEDS_RESHAPE 
RBO_FLAG_USE_DEACTIVATION 
RBO_FLAG_START_DEACTIVATED 
RBO_FLAG_DISABLED 
RBO_FLAG_USE_MARGIN 
RBO_FLAG_USE_DEFORM 

Definition at line 166 of file DNA_rigidbody_types.h.

◆ eRigidBodyOb_Type

RigidBodyOb.type

Enumerator
RBO_TYPE_ACTIVE 
RBO_TYPE_PASSIVE 

Definition at line 158 of file DNA_rigidbody_types.h.

◆ eRigidBodyWorld_Flag

RigidBodyWorld.flag

Enumerator
RBW_FLAG_MUTED 
RBW_FLAG_USE_SPLIT_IMPULSE 

Use split impulse when stepping the simulation.

Definition at line 78 of file DNA_rigidbody_types.h.