BulletWorld
-
class BulletWorld
Bases:
TypedReferenceCount
Inheritance diagram
-
enum BroadphaseAlgorithm
Configuration
-
enumerator BA_sweep_and_prune = 0
-
enumerator BA_dynamic_aabb_tree = 1
-
enumerator BA_sweep_and_prune = 0
-
enum FilterAlgorithm
-
enumerator FA_mask = 0
-
enumerator FA_groups_mask = 1
-
enumerator FA_callback = 2
-
enumerator FA_mask = 0
-
BulletPersistentManifold __get_manifold(int idx) const
-
BulletWorld(void)
-
void attach(TypedObject *object)
AttachRemove
-
void attach_character(BulletBaseCharacterControllerNode *node)
Deprecated: Please use
BulletWorld::attach()
-
void attach_constraint(BulletConstraint *constraint, bool linked_collision = false)
Attaches a single constraint to a world. Collision checks between the linked objects will be disabled if the second parameter is set to TRUE.
-
void attach_ghost(BulletGhostNode *node)
Deprecated methods, will be removed soon
Deprecated: Please use
BulletWorld::attach()
-
void attach_rigid_body(BulletRigidBodyNode *node)
Deprecated: Please use
BulletWorld::attach()
-
void attach_soft_body(BulletSoftBodyNode *node)
Deprecated: Please use
BulletWorld::attach()
-
void attach_vehicle(BulletVehicle *vehicle)
Deprecated: Please use
BulletWorld::attach()
-
void clear_contact_added_callback(void)
-
void clear_debug_node(void)
Removes a debug node that has been assigned to this
BulletWorld
.
-
void clear_filter_callback(void)
-
void clear_tick_callback(void)
-
BulletContactResult contact_test(PandaNode *node, bool use_filter = false) const
Performas a test for all bodies which are currently in contact with the given body. The test returns a
BulletContactResult
object which may contain zero, one or more contacts.If the optional parameter use_filter is set to TRUE this test will consider filter settings. Otherwise all objects in contact are reported, no matter if they would collide or not.
-
BulletContactResult contact_test_pair(PandaNode *node0, PandaNode *node1) const
Performas a test if the two bodies given as parameters are in contact or not. The test returns a
BulletContactResult
object which may contain zero or one contacts.
-
int do_physics(PN_stdfloat dt, int max_substeps = 1, PN_stdfloat stepsize = (1.0 / 60.0))
-
bool filter_test(PandaNode *node0, PandaNode *node1) const
Performs a test if two bodies should collide or not, based on the collision filter setting.
-
BulletBaseCharacterControllerNode *get_character(int idx) const
-
static TypeHandle get_class_type(void)
-
BulletConstraint *get_constraint(int idx) const
-
BulletDebugNode *get_debug_node(void) const
-
bool get_force_update_all_aabbs(void) const
-
BulletGhostNode *get_ghost(int idx) const
-
bool get_group_collision_flag(unsigned int group1, unsigned int group2) const
-
BulletPersistentManifold *get_manifold(int idx) const
-
int get_num_characters(void) const
Character controller
Character controller
Character controller
-
int get_num_constraints(void) const
Constraint
Constraint
Constraint
-
int get_num_ghosts(void) const
Ghost object
Ghost object
Ghost object
-
int get_num_manifolds(void) const
Manifolds
Manifolds
Manifolds
-
int get_num_rigid_bodies(void) const
Rigid body
Rigid body
Rigid body
-
int get_num_soft_bodies(void) const
Soft body
Soft body
Soft body
-
int get_num_vehicles(void) const
-
BulletRigidBodyNode *get_rigid_body(int idx) const
-
BulletSoftBodyNode *get_soft_body(int idx) const
-
BulletVehicle *get_vehicle(int idx) const
-
BulletSoftBodyWorldInfo get_world_info(void)
-
bool has_debug_node(void) const
-
BulletAllHitsRayResult ray_test_all(LPoint3 const &from_pos, LPoint3 const &to_pos, CollideMask const &mask = CollideMask::all_on()) const
-
BulletClosestHitRayResult ray_test_closest(LPoint3 const &from_pos, LPoint3 const &to_pos, CollideMask const &mask = CollideMask::all_on()) const
Raycast and other queries
-
void remove(TypedObject *object)
-
void remove_character(BulletBaseCharacterControllerNode *node)
Deprecated: Please use
BulletWorld::remove()
-
void remove_constraint(BulletConstraint *constraint)
Deprecated: Please use
BulletWorld::remove()
-
void remove_ghost(BulletGhostNode *node)
Deprecated: Please use
BulletWorld::remove()
-
void remove_rigid_body(BulletRigidBodyNode *node)
Deprecated: Please use
BulletWorld::remove()
-
void remove_soft_body(BulletSoftBodyNode *node)
Deprecated: Please use
BulletWorld::remove()
-
void remove_vehicle(BulletVehicle *vehicle)
Deprecated: Please use
BulletWorld::remove()
-
void set_contact_added_callback(CallbackObject *obj)
Callbacks
-
void set_debug_node(BulletDebugNode *node)
Debug
Debug
-
void set_filter_callback(CallbackObject *obj)
-
void set_force_update_all_aabbs(bool force)
-
void set_gravity(PN_stdfloat gx, PN_stdfloat gy, PN_stdfloat gz)
-
void set_group_collision_flag(unsigned int group1, unsigned int group2, bool enable)
Collision filtering
-
void set_tick_callback(CallbackObject *obj, bool is_pretick = false)
-
BulletClosestHitSweepResult sweep_test_closest(BulletShape *shape, TransformState const &from_ts, TransformState const &to_ts, CollideMask const &mask = CollideMask::all_on(), PN_stdfloat penetration = 0.0) const
Performs a sweep test against all other shapes that match the given group mask. The provided shape must be a convex shape; it is an error to invoke this method using a non-convex shape.
-
enum BroadphaseAlgorithm