Blender V5.0
rb_bullet_api.cpp File Reference

Rigid Body API implementation for Bullet. More...

Go to the source code of this file.

Classes

struct  rbDynamicsWorld
struct  rbRigidBody
struct  rbVert
struct  rbTri
struct  rbMeshData
struct  rbCollisionShape
struct  rbFilterCallback

Functions

static void copy_v3_btvec3 (float vec[3], const btVector3 &btvec)
static void copy_quat_btquat (float quat[4], const btQuaternion &btquat)
rbDynamicsWorldRB_dworld_new (const float gravity[3])
void RB_dworld_delete (rbDynamicsWorld *world)
void RB_dworld_get_gravity (rbDynamicsWorld *world, float g_out[3])
void RB_dworld_set_gravity (rbDynamicsWorld *world, const float g_in[3])
void RB_dworld_set_solver_iterations (rbDynamicsWorld *world, int num_solver_iterations)
void RB_dworld_set_split_impulse (rbDynamicsWorld *world, int split_impulse)
void RB_dworld_step_simulation (rbDynamicsWorld *world, float timeStep, int maxSubSteps, float timeSubStep)
void RB_dworld_export (rbDynamicsWorld *world, const char *filename)
void RB_dworld_add_body (rbDynamicsWorld *world, rbRigidBody *object, int col_groups)
void RB_dworld_remove_body (rbDynamicsWorld *world, rbRigidBody *object)
void RB_world_convex_sweep_test (rbDynamicsWorld *world, rbRigidBody *object, const float loc_start[3], const float loc_end[3], float v_location[3], float v_hitpoint[3], float v_normal[3], int *r_hit)
rbRigidBodyRB_body_new (rbCollisionShape *shape, const float loc[3], const float rot[4])
void RB_body_delete (rbRigidBody *object)
void RB_body_set_collision_shape (rbRigidBody *object, rbCollisionShape *shape)
float RB_body_get_mass (rbRigidBody *object)
void RB_body_set_mass (rbRigidBody *object, float value)
float RB_body_get_friction (rbRigidBody *object)
void RB_body_set_friction (rbRigidBody *object, float value)
float RB_body_get_restitution (rbRigidBody *object)
void RB_body_set_restitution (rbRigidBody *object, float value)
float RB_body_get_linear_damping (rbRigidBody *object)
void RB_body_set_linear_damping (rbRigidBody *object, float value)
float RB_body_get_angular_damping (rbRigidBody *object)
void RB_body_set_angular_damping (rbRigidBody *object, float value)
void RB_body_set_damping (rbRigidBody *object, float linear, float angular)
float RB_body_get_linear_sleep_thresh (rbRigidBody *object)
void RB_body_set_linear_sleep_thresh (rbRigidBody *object, float value)
float RB_body_get_angular_sleep_thresh (rbRigidBody *object)
void RB_body_set_angular_sleep_thresh (rbRigidBody *object, float value)
void RB_body_set_sleep_thresh (rbRigidBody *object, float linear, float angular)
void RB_body_get_linear_velocity (rbRigidBody *object, float v_out[3])
void RB_body_set_linear_velocity (rbRigidBody *object, const float v_in[3])
void RB_body_get_angular_velocity (rbRigidBody *object, float v_out[3])
void RB_body_set_angular_velocity (rbRigidBody *object, const float v_in[3])
void RB_body_set_linear_factor (rbRigidBody *object, float x, float y, float z)
void RB_body_set_angular_factor (rbRigidBody *object, float x, float y, float z)
void RB_body_set_kinematic_state (rbRigidBody *object, int kinematic)
void RB_body_set_activation_state (rbRigidBody *object, int use_deactivation)
void RB_body_activate (rbRigidBody *object)
void RB_body_deactivate (rbRigidBody *object)
void RB_body_get_transform_matrix (rbRigidBody *object, float m_out[4][4])
void RB_body_set_loc_rot (rbRigidBody *object, const float loc[3], const float rot[4])
void RB_body_set_scale (rbRigidBody *object, const float scale[3])
void RB_body_get_position (rbRigidBody *object, float v_out[3])
void RB_body_get_orientation (rbRigidBody *object, float v_out[4])
void RB_body_get_scale (rbRigidBody *object, float v_out[3])
void RB_body_apply_central_force (rbRigidBody *object, const float v_in[3])
rbCollisionShapeRB_shape_new_box (float x, float y, float z)
rbCollisionShapeRB_shape_new_sphere (float radius)
rbCollisionShapeRB_shape_new_capsule (float radius, float height)
rbCollisionShapeRB_shape_new_cone (float radius, float height)
rbCollisionShapeRB_shape_new_cylinder (float radius, float height)
rbCollisionShapeRB_shape_new_convex_hull (const float *verts, int stride, int count, float margin, bool *can_embed)
rbMeshDataRB_trimesh_data_new (int num_tris, int num_verts)
static void RB_trimesh_data_delete (rbMeshData *mesh)
void RB_trimesh_add_vertices (rbMeshData *mesh, float *vertices, int num_verts, int vert_stride)
void RB_trimesh_add_triangle_indices (rbMeshData *mesh, int num, int index0, int index1, int index2)
void RB_trimesh_finish (rbMeshData *mesh)
rbCollisionShapeRB_shape_new_trimesh (rbMeshData *mesh)
void RB_shape_trimesh_update (rbCollisionShape *shape, const float *vertices, int num_verts, int vert_stride, const float min[3], const float max[3])
rbCollisionShapeRB_shape_new_gimpact_mesh (rbMeshData *mesh)
rbCollisionShapeRB_shape_new_compound ()
void RB_compound_add_child_shape (rbCollisionShape *parentShape, rbCollisionShape *shape, const float loc[3], const float rot[4])
void RB_shape_delete (rbCollisionShape *shape)
float RB_shape_get_margin (rbCollisionShape *shape)
void RB_shape_set_margin (rbCollisionShape *shape, float value)
void RB_dworld_add_constraint (rbDynamicsWorld *world, rbConstraint *con, int disable_collisions)
void RB_dworld_remove_constraint (rbDynamicsWorld *world, rbConstraint *con)
static void make_constraint_transforms (btTransform &transform1, btTransform &transform2, btRigidBody *body1, btRigidBody *body2, const float pivot[3], const float orn[4])
rbConstraintRB_constraint_new_point (const float pivot[3], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_fixed (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_hinge (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_slider (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_piston (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_6dof (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_6dof_spring (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_6dof_spring2 (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
rbConstraintRB_constraint_new_motor (float pivot[3], float orn[4], rbRigidBody *rb1, rbRigidBody *rb2)
void RB_constraint_delete (rbConstraint *con)
void RB_constraint_set_enabled (rbConstraint *con, int enabled)
void RB_constraint_set_limits_hinge (rbConstraint *con, float lower, float upper)
void RB_constraint_set_limits_slider (rbConstraint *con, float lower, float upper)
void RB_constraint_set_limits_piston (rbConstraint *con, float lin_lower, float lin_upper, float ang_lower, float ang_upper)
void RB_constraint_set_limits_6dof (rbConstraint *con, int axis, float lower, float upper)
void RB_constraint_set_limits_6dof_spring2 (rbConstraint *con, int axis, float lower, float upper)
void RB_constraint_set_stiffness_6dof_spring (rbConstraint *con, int axis, float stiffness)
void RB_constraint_set_damping_6dof_spring (rbConstraint *con, int axis, float damping)
void RB_constraint_set_spring_6dof_spring (rbConstraint *con, int axis, int enable)
void RB_constraint_set_equilibrium_6dof_spring (rbConstraint *con)
void RB_constraint_set_stiffness_6dof_spring2 (rbConstraint *con, int axis, float stiffness)
void RB_constraint_set_damping_6dof_spring2 (rbConstraint *con, int axis, float damping)
void RB_constraint_set_spring_6dof_spring2 (rbConstraint *con, int axis, int enable)
void RB_constraint_set_equilibrium_6dof_spring2 (rbConstraint *con)
void RB_constraint_set_solver_iterations (rbConstraint *con, int num_solver_iterations)
void RB_constraint_set_breaking_threshold (rbConstraint *con, float threshold)
void RB_constraint_set_enable_motor (rbConstraint *con, int enable_lin, int enable_ang)
void RB_constraint_set_max_impulse_motor (rbConstraint *con, float max_impulse_lin, float max_impulse_ang)
void RB_constraint_set_target_velocity_motor (rbConstraint *con, float velocity_lin, float velocity_ang)

Detailed Description

Rigid Body API implementation for Bullet.

Definition in file rb_bullet_api.cpp.

Function Documentation

◆ copy_quat_btquat()

void copy_quat_btquat ( float quat[4],
const btQuaternion & btquat )
inlinestatic

Definition at line 111 of file rb_bullet_api.cpp.

References btQuaternion::getW().

Referenced by RB_body_get_orientation().

◆ copy_v3_btvec3()

void copy_v3_btvec3 ( float vec[3],
const btVector3 & btvec )
inlinestatic

◆ make_constraint_transforms()

void make_constraint_transforms ( btTransform & transform1,
btTransform & transform2,
btRigidBody * body1,
btRigidBody * body2,
const float pivot[3],
const float orn[4] )
static

◆ RB_body_activate()

void RB_body_activate ( rbRigidBody * object)

Definition at line 556 of file rb_bullet_api.cpp.

References ACTIVE_TAG.

◆ RB_body_apply_central_force()

void RB_body_apply_central_force ( rbRigidBody * object,
const float v_in[3] )

Definition at line 646 of file rb_bullet_api.cpp.

References btRigidBody::applyCentralForce(), and btVector3.

◆ RB_body_deactivate()

void RB_body_deactivate ( rbRigidBody * object)

Definition at line 561 of file rb_bullet_api.cpp.

References ISLAND_SLEEPING.

◆ RB_body_delete()

◆ RB_body_get_angular_damping()

float RB_body_get_angular_damping ( rbRigidBody * object)

Definition at line 444 of file rb_bullet_api.cpp.

References btRigidBody::getAngularDamping().

◆ RB_body_get_angular_sleep_thresh()

float RB_body_get_angular_sleep_thresh ( rbRigidBody * object)

◆ RB_body_get_angular_velocity()

void RB_body_get_angular_velocity ( rbRigidBody * object,
float v_out[3] )

Definition at line 505 of file rb_bullet_api.cpp.

References copy_v3_btvec3(), and btRigidBody::getAngularVelocity().

◆ RB_body_get_friction()

float RB_body_get_friction ( rbRigidBody * object)

Definition at line 409 of file rb_bullet_api.cpp.

◆ RB_body_get_linear_damping()

float RB_body_get_linear_damping ( rbRigidBody * object)

◆ RB_body_get_linear_sleep_thresh()

float RB_body_get_linear_sleep_thresh ( rbRigidBody * object)

◆ RB_body_get_linear_velocity()

void RB_body_get_linear_velocity ( rbRigidBody * object,
float v_out[3] )

Definition at line 491 of file rb_bullet_api.cpp.

References copy_v3_btvec3(), and btRigidBody::getLinearVelocity().

◆ RB_body_get_mass()

float RB_body_get_mass ( rbRigidBody * object)

Definition at line 374 of file rb_bullet_api.cpp.

References float, and btRigidBody::getInvMass().

Referenced by RB_body_set_collision_shape().

◆ RB_body_get_orientation()

void RB_body_get_orientation ( rbRigidBody * object,
float v_out[4] )

Definition at line 626 of file rb_bullet_api.cpp.

References copy_quat_btquat().

Referenced by ptcache_rigidbody_write().

◆ RB_body_get_position()

void RB_body_get_position ( rbRigidBody * object,
float v_out[3] )

Definition at line 619 of file rb_bullet_api.cpp.

References copy_v3_btvec3().

Referenced by ptcache_rigidbody_write().

◆ RB_body_get_restitution()

float RB_body_get_restitution ( rbRigidBody * object)

Definition at line 421 of file rb_bullet_api.cpp.

◆ RB_body_get_scale()

void RB_body_get_scale ( rbRigidBody * object,
float v_out[3] )

◆ RB_body_get_transform_matrix()

void RB_body_get_transform_matrix ( rbRigidBody * object,
float m_out[4][4] )

◆ RB_body_new()

rbRigidBody * RB_body_new ( rbCollisionShape * shape,
const float loc[3],
const float rot[4] )

◆ RB_body_set_activation_state()

void RB_body_set_activation_state ( rbRigidBody * object,
int use_deactivation )

Definition at line 546 of file rb_bullet_api.cpp.

References ACTIVE_TAG, and DISABLE_DEACTIVATION.

◆ RB_body_set_angular_damping()

void RB_body_set_angular_damping ( rbRigidBody * object,
float value )

Definition at line 450 of file rb_bullet_api.cpp.

References RB_body_get_linear_damping(), and RB_body_set_damping().

◆ RB_body_set_angular_factor()

void RB_body_set_angular_factor ( rbRigidBody * object,
float x,
float y,
float z )

Definition at line 525 of file rb_bullet_api.cpp.

References btVector3, btRigidBody::setAngularFactor(), x, y, and z().

◆ RB_body_set_angular_sleep_thresh()

void RB_body_set_angular_sleep_thresh ( rbRigidBody * object,
float value )

◆ RB_body_set_angular_velocity()

void RB_body_set_angular_velocity ( rbRigidBody * object,
const float v_in[3] )

Definition at line 512 of file rb_bullet_api.cpp.

References btVector3, and btRigidBody::setAngularVelocity().

◆ RB_body_set_collision_shape()

void RB_body_set_collision_shape ( rbRigidBody * object,
rbCollisionShape * shape )

◆ RB_body_set_damping()

void RB_body_set_damping ( rbRigidBody * object,
float linear,
float angular )

◆ RB_body_set_friction()

void RB_body_set_friction ( rbRigidBody * object,
float value )

Definition at line 415 of file rb_bullet_api.cpp.

◆ RB_body_set_kinematic_state()

void RB_body_set_kinematic_state ( rbRigidBody * object,
int kinematic )

Definition at line 533 of file rb_bullet_api.cpp.

◆ RB_body_set_linear_damping()

void RB_body_set_linear_damping ( rbRigidBody * object,
float value )

Definition at line 439 of file rb_bullet_api.cpp.

References RB_body_get_linear_damping(), and RB_body_set_damping().

◆ RB_body_set_linear_factor()

void RB_body_set_linear_factor ( rbRigidBody * object,
float x,
float y,
float z )

Definition at line 519 of file rb_bullet_api.cpp.

References btVector3, btRigidBody::setLinearFactor(), x, y, and z().

◆ RB_body_set_linear_sleep_thresh()

void RB_body_set_linear_sleep_thresh ( rbRigidBody * object,
float value )

◆ RB_body_set_linear_velocity()

void RB_body_set_linear_velocity ( rbRigidBody * object,
const float v_in[3] )

Definition at line 498 of file rb_bullet_api.cpp.

References btVector3, and btRigidBody::setLinearVelocity().

◆ RB_body_set_loc_rot()

void RB_body_set_loc_rot ( rbRigidBody * object,
const float loc[3],
const float rot[4] )

◆ RB_body_set_mass()

◆ RB_body_set_restitution()

void RB_body_set_restitution ( rbRigidBody * object,
float value )

Definition at line 427 of file rb_bullet_api.cpp.

◆ RB_body_set_scale()

void RB_body_set_scale ( rbRigidBody * object,
const float scale[3] )

◆ RB_body_set_sleep_thresh()

void RB_body_set_sleep_thresh ( rbRigidBody * object,
float linear,
float angular )

◆ RB_compound_add_child_shape()

void RB_compound_add_child_shape ( rbCollisionShape * parentShape,
rbCollisionShape * shape,
const float loc[3],
const float rot[4] )

◆ RB_constraint_delete()

void RB_constraint_delete ( rbConstraint * con)

Definition at line 1116 of file rb_bullet_api.cpp.

References btTypedConstraint().

◆ RB_constraint_new_6dof()

rbConstraint * RB_constraint_new_6dof ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_6dof_spring()

rbConstraint * RB_constraint_new_6dof_spring ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_6dof_spring2()

rbConstraint * RB_constraint_new_6dof_spring2 ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_fixed()

rbConstraint * RB_constraint_new_fixed ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

Definition at line 966 of file rb_bullet_api.cpp.

References rbRigidBody::body, btTransform, and make_constraint_transforms().

◆ RB_constraint_new_hinge()

rbConstraint * RB_constraint_new_hinge ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_motor()

rbConstraint * RB_constraint_new_motor ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_piston()

rbConstraint * RB_constraint_new_piston ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_point()

rbConstraint * RB_constraint_new_point ( const float pivot[3],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_new_slider()

rbConstraint * RB_constraint_new_slider ( float pivot[3],
float orn[4],
rbRigidBody * rb1,
rbRigidBody * rb2 )

◆ RB_constraint_set_breaking_threshold()

void RB_constraint_set_breaking_threshold ( rbConstraint * con,
float threshold )

Definition at line 1258 of file rb_bullet_api.cpp.

References btTypedConstraint().

◆ RB_constraint_set_damping_6dof_spring()

void RB_constraint_set_damping_6dof_spring ( rbConstraint * con,
int axis,
float damping )

Definition at line 1192 of file rb_bullet_api.cpp.

References btGeneric6DofSpringConstraint().

◆ RB_constraint_set_damping_6dof_spring2()

void RB_constraint_set_damping_6dof_spring2 ( rbConstraint * con,
int axis,
float damping )

Definition at line 1227 of file rb_bullet_api.cpp.

References btGeneric6DofSpring2Constraint().

◆ RB_constraint_set_enable_motor()

void RB_constraint_set_enable_motor ( rbConstraint * con,
int enable_lin,
int enable_ang )

Definition at line 1265 of file rb_bullet_api.cpp.

References btGeneric6DofConstraint().

◆ RB_constraint_set_enabled()

void RB_constraint_set_enabled ( rbConstraint * con,
int enabled )

Definition at line 1131 of file rb_bullet_api.cpp.

References btTypedConstraint(), and enabled.

◆ RB_constraint_set_equilibrium_6dof_spring()

void RB_constraint_set_equilibrium_6dof_spring ( rbConstraint * con)

Definition at line 1211 of file rb_bullet_api.cpp.

References btGeneric6DofSpringConstraint().

◆ RB_constraint_set_equilibrium_6dof_spring2()

void RB_constraint_set_equilibrium_6dof_spring2 ( rbConstraint * con)

Definition at line 1243 of file rb_bullet_api.cpp.

References btGeneric6DofSpring2Constraint().

◆ RB_constraint_set_limits_6dof()

void RB_constraint_set_limits_6dof ( rbConstraint * con,
int axis,
float lower,
float upper )

Definition at line 1169 of file rb_bullet_api.cpp.

References btGeneric6DofConstraint().

◆ RB_constraint_set_limits_6dof_spring2()

void RB_constraint_set_limits_6dof_spring2 ( rbConstraint * con,
int axis,
float lower,
float upper )

Definition at line 1176 of file rb_bullet_api.cpp.

References btGeneric6DofSpring2Constraint().

◆ RB_constraint_set_limits_hinge()

void RB_constraint_set_limits_hinge ( rbConstraint * con,
float lower,
float upper )

Definition at line 1138 of file rb_bullet_api.cpp.

References btHingeConstraint().

◆ RB_constraint_set_limits_piston()

void RB_constraint_set_limits_piston ( rbConstraint * con,
float lin_lower,
float lin_upper,
float ang_lower,
float ang_upper )

Definition at line 1158 of file rb_bullet_api.cpp.

References btSliderConstraint().

◆ RB_constraint_set_limits_slider()

void RB_constraint_set_limits_slider ( rbConstraint * con,
float lower,
float upper )

Definition at line 1150 of file rb_bullet_api.cpp.

References btSliderConstraint().

◆ RB_constraint_set_max_impulse_motor()

void RB_constraint_set_max_impulse_motor ( rbConstraint * con,
float max_impulse_lin,
float max_impulse_ang )

Definition at line 1273 of file rb_bullet_api.cpp.

References btGeneric6DofConstraint().

◆ RB_constraint_set_solver_iterations()

void RB_constraint_set_solver_iterations ( rbConstraint * con,
int num_solver_iterations )

Definition at line 1251 of file rb_bullet_api.cpp.

References btTypedConstraint().

◆ RB_constraint_set_spring_6dof_spring()

void RB_constraint_set_spring_6dof_spring ( rbConstraint * con,
int axis,
int enable )

Definition at line 1203 of file rb_bullet_api.cpp.

References btGeneric6DofSpringConstraint().

◆ RB_constraint_set_spring_6dof_spring2()

void RB_constraint_set_spring_6dof_spring2 ( rbConstraint * con,
int axis,
int enable )

Definition at line 1235 of file rb_bullet_api.cpp.

References btGeneric6DofSpring2Constraint().

◆ RB_constraint_set_stiffness_6dof_spring()

void RB_constraint_set_stiffness_6dof_spring ( rbConstraint * con,
int axis,
float stiffness )

Definition at line 1184 of file rb_bullet_api.cpp.

References btGeneric6DofSpringConstraint().

◆ RB_constraint_set_stiffness_6dof_spring2()

void RB_constraint_set_stiffness_6dof_spring2 ( rbConstraint * con,
int axis,
float stiffness )

Definition at line 1219 of file rb_bullet_api.cpp.

References btGeneric6DofSpring2Constraint().

◆ RB_constraint_set_target_velocity_motor()

void RB_constraint_set_target_velocity_motor ( rbConstraint * con,
float velocity_lin,
float velocity_ang )

Definition at line 1283 of file rb_bullet_api.cpp.

References btGeneric6DofConstraint().

◆ RB_dworld_add_body()

void RB_dworld_add_body ( rbDynamicsWorld * world,
rbRigidBody * object,
int col_groups )

Definition at line 230 of file rb_bullet_api.cpp.

References rbDynamicsWorld::dynamicsWorld.

◆ RB_dworld_add_constraint()

void RB_dworld_add_constraint ( rbDynamicsWorld * world,
rbConstraint * con,
int disable_collisions )

Definition at line 919 of file rb_bullet_api.cpp.

References btTypedConstraint(), and rbDynamicsWorld::dynamicsWorld.

◆ RB_dworld_delete()

◆ RB_dworld_export()

void RB_dworld_export ( rbDynamicsWorld * world,
const char * filename )

Exports entire dynamics world to Bullet's "*.bullet" binary format which is similar to Blender's SDNA system.

Parameters
worldDynamics world to write to file
filenameAssumed to be a valid filename, with .bullet extension

Definition at line 207 of file rb_bullet_api.cpp.

References rbDynamicsWorld::dynamicsWorld, btDefaultSerializer::getBufferPointer(), and btDefaultSerializer::getCurrentBufferSize().

Referenced by rigidbody_world_export_exec().

◆ RB_dworld_get_gravity()

void RB_dworld_get_gravity ( rbDynamicsWorld * world,
float g_out[3] )

Definition at line 167 of file rb_bullet_api.cpp.

References copy_v3_btvec3(), and rbDynamicsWorld::dynamicsWorld.

◆ RB_dworld_new()

◆ RB_dworld_remove_body()

void RB_dworld_remove_body ( rbDynamicsWorld * world,
rbRigidBody * object )

Definition at line 238 of file rb_bullet_api.cpp.

References rbDynamicsWorld::dynamicsWorld.

◆ RB_dworld_remove_constraint()

void RB_dworld_remove_constraint ( rbDynamicsWorld * world,
rbConstraint * con )

Definition at line 926 of file rb_bullet_api.cpp.

References btTypedConstraint(), and rbDynamicsWorld::dynamicsWorld.

◆ RB_dworld_set_gravity()

void RB_dworld_set_gravity ( rbDynamicsWorld * world,
const float g_in[3] )

Definition at line 172 of file rb_bullet_api.cpp.

References btVector3, and rbDynamicsWorld::dynamicsWorld.

Referenced by RB_dworld_new().

◆ RB_dworld_set_solver_iterations()

void RB_dworld_set_solver_iterations ( rbDynamicsWorld * world,
int num_solver_iterations )

◆ RB_dworld_set_split_impulse()

void RB_dworld_set_split_impulse ( rbDynamicsWorld * world,
int split_impulse )

◆ RB_dworld_step_simulation()

void RB_dworld_step_simulation ( rbDynamicsWorld * world,
float timeStep,
int maxSubSteps,
float timeSubStep )

Definition at line 197 of file rb_bullet_api.cpp.

References rbDynamicsWorld::dynamicsWorld.

◆ RB_shape_delete()

◆ RB_shape_get_margin()

float RB_shape_get_margin ( rbCollisionShape * shape)

Definition at line 904 of file rb_bullet_api.cpp.

References rbCollisionShape::cshape.

◆ RB_shape_new_box()

◆ RB_shape_new_capsule()

◆ RB_shape_new_compound()

◆ RB_shape_new_cone()

◆ RB_shape_new_convex_hull()

◆ RB_shape_new_cylinder()

◆ RB_shape_new_gimpact_mesh()

◆ RB_shape_new_sphere()

◆ RB_shape_new_trimesh()

◆ RB_shape_set_margin()

void RB_shape_set_margin ( rbCollisionShape * shape,
float value )

Definition at line 909 of file rb_bullet_api.cpp.

References rbCollisionShape::cshape.

◆ RB_shape_trimesh_update()

◆ RB_trimesh_add_triangle_indices()

void RB_trimesh_add_triangle_indices ( rbMeshData * mesh,
int num,
int index0,
int index1,
int index2 )

Definition at line 765 of file rb_bullet_api.cpp.

References num, rbMeshData::triangles, rbTri::v0, rbTri::v1, and rbTri::v2.

◆ RB_trimesh_add_vertices()

void RB_trimesh_add_vertices ( rbMeshData * mesh,
float * vertices,
int num_verts,
int vert_stride )

Definition at line 756 of file rb_bullet_api.cpp.

References i, rbMeshData::vertices, rbVert::x, rbVert::y, and rbVert::z.

◆ RB_trimesh_data_delete()

void RB_trimesh_data_delete ( rbMeshData * mesh)
static

Definition at line 748 of file rb_bullet_api.cpp.

References rbMeshData::index_array, rbMeshData::triangles, and rbMeshData::vertices.

Referenced by RB_shape_delete().

◆ RB_trimesh_data_new()

rbMeshData * RB_trimesh_data_new ( int num_tris,
int num_verts )

◆ RB_trimesh_finish()

◆ RB_world_convex_sweep_test()

void RB_world_convex_sweep_test ( rbDynamicsWorld * world,
rbRigidBody * object,
const float loc_start[3],
const float loc_end[3],
float v_location[3],
float v_hitpoint[3],
float v_normal[3],
int * r_hit )