panda3d.bullet.BulletWorld

class BulletWorld

Bases: TypedReferenceCount

Inheritance diagram

Inheritance diagram of BulletWorld

enum BroadphaseAlgorithm

Configuration

enumerator BA_sweep_and_prune = 0
enumerator BA_dynamic_aabb_tree = 1
enum FilterAlgorithm
enumerator FA_mask = 0
enumerator FA_groups_mask = 1
enumerator FA_callback = 2
__init__() → None
attach(object: TypedObject) → None

AttachRemove

attachCharacter(node: BulletBaseCharacterControllerNode) → None

Deprecated: Please use BulletWorld.attach()

attachConstraint(constraint: BulletConstraint, linked_collision: bool) → None

Attaches a single constraint to a world. Collision checks between the linked objects will be disabled if the second parameter is set to TRUE.

attachGhost(node: BulletGhostNode) → None

Deprecated: Please use BulletWorld.attach()

attachRigidBody(node: BulletRigidBodyNode) → None

Deprecated: Please use BulletWorld.attach()

attachSoftBody(node: BulletSoftBodyNode) → None

Deprecated: Please use BulletWorld.attach()

attachVehicle(vehicle: BulletVehicle) → None

Deprecated: Please use BulletWorld.attach()

property characters
Return type

Sequence[BulletBaseCharacterControllerNode]

clearContactAddedCallback() → None
clearDebugNode() → None

Removes a debug node that has been assigned to this BulletWorld.

clearFilterCallback() → None
clearTickCallback() → None
property constraints
Return type

Sequence[BulletConstraint]

contactTest(node: PandaNode, use_filter: bool) → BulletContactResult

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.

Return type

BulletContactResult

contactTestPair(node0: PandaNode, node1: PandaNode) → BulletContactResult

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.

Return type

BulletContactResult

property debug_node

Getter Setter

Debug

Debug

Return type

BulletDebugNode

doPhysics(dt: float, max_substeps: int, stepsize: float) → int
filterTest(node0: PandaNode, node1: PandaNode) → bool

Performs a test if two bodies should collide or not, based on the collision filter setting.

property force_update_all_aabbs

Getter Setter

Return type

bool

getCharacter(idx: int) → BulletBaseCharacterControllerNode
Return type

BulletBaseCharacterControllerNode

getCharacters() → list
static getClassType() → TypeHandle
Return type

TypeHandle

getConstraint(idx: int) → BulletConstraint
Return type

BulletConstraint

getConstraints() → list
getDebugNode() → BulletDebugNode
Return type

BulletDebugNode

getForceUpdateAllAabbs() → bool
getGhost(idx: int) → BulletGhostNode
Return type

BulletGhostNode

getGhosts() → list
getGravity() → LVector3
Return type

LVector3

getGroupCollisionFlag(group1: int, group2: int) → bool
getManifold(idx: int) → BulletPersistentManifold
Return type

BulletPersistentManifold

getManifolds() → list
getNumCharacters() → int

Character controller

getNumConstraints() → int

Constraint

getNumGhosts() → int

Ghost object

getNumManifolds() → int

Manifolds

getNumRigidBodies() → int

Rigid body

getNumSoftBodies() → int

Soft body

getNumVehicles() → int
getRigidBodies() → list
getRigidBody(idx: int) → BulletRigidBodyNode
Return type

BulletRigidBodyNode

getSoftBodies() → list
getSoftBody(idx: int) → BulletSoftBodyNode
Return type

BulletSoftBodyNode

getVehicle(idx: int) → BulletVehicle
Return type

BulletVehicle

getVehicles() → list
getWorldInfo() → BulletSoftBodyWorldInfo
Return type

BulletSoftBodyWorldInfo

property ghosts
Return type

Sequence[BulletGhostNode]

property gravity

Getter Setter

Return type

LVector3

hasDebugNode() → bool
property manifolds
Return type

Sequence[BulletPersistentManifold]

rayTestAll(from_pos: LPoint3, to_pos: LPoint3, mask: CollideMask) → BulletAllHitsRayResult
Return type

BulletAllHitsRayResult

rayTestClosest(from_pos: LPoint3, to_pos: LPoint3, mask: CollideMask) → BulletClosestHitRayResult

Raycast and other queries

Return type

BulletClosestHitRayResult

remove(object: TypedObject) → None
removeCharacter(node: BulletBaseCharacterControllerNode) → None

Deprecated: Please use BulletWorld.remove()

removeConstraint(constraint: BulletConstraint) → None

Deprecated: Please use BulletWorld.remove()

removeGhost(node: BulletGhostNode) → None

Deprecated: Please use BulletWorld.remove()

removeRigidBody(node: BulletRigidBodyNode) → None

Deprecated: Please use BulletWorld.remove()

removeSoftBody(node: BulletSoftBodyNode) → None

Deprecated: Please use BulletWorld.remove()

removeVehicle(vehicle: BulletVehicle) → None

Deprecated: Please use BulletWorld.remove()

property rigid_bodies
Return type

Sequence[BulletRigidBodyNode]

setContactAddedCallback(obj: CallbackObject) → None

Callbacks

setDebugNode(node: BulletDebugNode) → None
setFilterCallback(obj: CallbackObject) → None
setForceUpdateAllAabbs(force: bool) → None
setGravity(gravity: LVector3) → None
setGravity(gx: float, gy: float, gz: float) → None
setGroupCollisionFlag(group1: int, group2: int, enable: bool) → None

Collision filtering

setTickCallback(obj: CallbackObject, is_pretick: bool) → None
property soft_bodies
Return type

Sequence[BulletSoftBodyNode]

sweepTestClosest(shape: BulletShape, from_ts: TransformState, to_ts: TransformState, mask: CollideMask, penetration: float) → BulletClosestHitSweepResult

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.

Return type

BulletClosestHitSweepResult

property vehicles
Return type

Sequence[BulletVehicle]

property world_info
Return type

BulletSoftBodyWorldInfo