CollisionNode
from panda3d.core import CollisionNode
- class CollisionNode
Bases:
PandaNode
A node in the scene graph that can hold any number of CollisionSolids. This may either represent a bit of static geometry in the scene that things will collide with, or an animated object twirling around in the world and running into things.
Inheritance diagram
- __init__(*args, **kwargs)
- addSolid()
C++ Interface: add_solid(const CollisionNode self, const CollisionSolid solid)
- /**
Adds the indicated solid to the node. Returns the index of the new solid
within the node’s list of solids.
*/
- add_solid()
C++ Interface: add_solid(const CollisionNode self, const CollisionSolid solid)
- /**
Adds the indicated solid to the node. Returns the index of the new solid
within the node’s list of solids.
*/
- clearSolids()
C++ Interface: clear_solids(const CollisionNode self)
- /**
Removes all solids from the node.
*/
- clear_solids()
C++ Interface: clear_solids(const CollisionNode self)
- /**
Removes all solids from the node.
*/
- collider_sort
- default_collide_mask = 0000 0000 0000 1111 1111 1111 1111 1111
- from_collide_mask
- getClassType()
C++ Interface: get_class_type()
- getColliderSort()
C++ Interface: get_collider_sort(CollisionNode self)
- /**
Returns the collider_sort value that has been set for this particular node.
See set_collider_sort().
*/
- getDefaultCollideMask()
C++ Interface: get_default_collide_mask()
- /**
Returns the default into_collide_mask assigned to new CollisionNodes.
*/
- getFromCollideMask()
C++ Interface: get_from_collide_mask(CollisionNode self)
- /**
Returns the current “from” CollideMask. In order for a collision to be
detected from this object into another object, the intersection of this
object’s “from” mask and the other object’s “into” mask must be nonzero.
*/
- getIntoCollideMask()
C++ Interface: get_into_collide_mask(CollisionNode self)
- /**
Returns the current “into” CollideMask. In order for a collision to be
detected from another object into this object, the intersection of the
other object’s “from” mask and this object’s “into” mask must be nonzero.
*/
- getSolids()
- get_class_type()
C++ Interface: get_class_type()
- get_collider_sort()
C++ Interface: get_collider_sort(CollisionNode self)
- /**
Returns the collider_sort value that has been set for this particular node.
See set_collider_sort().
*/
- get_default_collide_mask()
C++ Interface: get_default_collide_mask()
- /**
Returns the default into_collide_mask assigned to new CollisionNodes.
*/
- get_from_collide_mask()
C++ Interface: get_from_collide_mask(CollisionNode self)
- /**
Returns the current “from” CollideMask. In order for a collision to be
detected from this object into another object, the intersection of this
object’s “from” mask and the other object’s “into” mask must be nonzero.
*/
- get_into_collide_mask()
C++ Interface: get_into_collide_mask(CollisionNode self)
- /**
Returns the current “into” CollideMask. In order for a collision to be
detected from another object into this object, the intersection of the
other object’s “from” mask and this object’s “into” mask must be nonzero.
*/
- get_solids()
- insertSolid()
C++ Interface: insert_solid(const CollisionNode self, int n, const CollisionSolid solid)
- /**
Inserts the indicated solid to the node at the indicated position.
*/
- insert_solid()
C++ Interface: insert_solid(const CollisionNode self, int n, const CollisionSolid solid)
- /**
Inserts the indicated solid to the node at the indicated position.
*/
- into_collide_mask
- owner
- removeSolid()
C++ Interface: remove_solid(const CollisionNode self, int n)
- /**
Removes the solid with the indicated index. This will shift all subsequent
indices down by one.
*/
- remove_solid()
C++ Interface: remove_solid(const CollisionNode self, int n)
- /**
Removes the solid with the indicated index. This will shift all subsequent
indices down by one.
*/
- setCollideMask()
C++ Interface: set_collide_mask(const CollisionNode self, BitMask mask)
- /**
Simultaneously sets both the “from” and “into” CollideMask values to the
same thing.
*/
- setColliderSort()
C++ Interface: set_collider_sort(const CollisionNode self, int sort)
- /**
Sets a particular collider_sort value on this node. This controls the
order in which colliders (that is, “from nodes”) are grouped together for
the collision traversal.
If there are 32 or fewer colliders added to any particular
CollisionTraverser, then this value has no meaning. It is only useful if
there are many colliders, which may force the CollisionTraverser to make
multiple passes through the data; in that case, it may be a useful
optimization to group colliders that have similar bounding volumes together
(by giving them similar sort values).
*/
- setFromCollideMask()
C++ Interface: set_from_collide_mask(const CollisionNode self, BitMask mask)
- /**
Sets the “from” CollideMask. In order for a collision to be detected from
this object into another object, the intersection of this object’s “from”
mask and the other object’s “into” mask must be nonzero.
*/
- setIntoCollideMask()
C++ Interface: set_into_collide_mask(const CollisionNode self, BitMask mask)
- /**
Sets the “into” CollideMask. In order for a collision to be detected from
another object into this object, the intersection of the other object’s
“from” mask and this object’s “into” mask must be nonzero.
*/
- setSolid()
C++ Interface: set_solid(const CollisionNode self, int n, CollisionSolid solid)
- /**
Replaces the solid with the indicated index.
*/
- set_collide_mask()
C++ Interface: set_collide_mask(const CollisionNode self, BitMask mask)
- /**
Simultaneously sets both the “from” and “into” CollideMask values to the
same thing.
*/
- set_collider_sort()
C++ Interface: set_collider_sort(const CollisionNode self, int sort)
- /**
Sets a particular collider_sort value on this node. This controls the
order in which colliders (that is, “from nodes”) are grouped together for
the collision traversal.
If there are 32 or fewer colliders added to any particular
CollisionTraverser, then this value has no meaning. It is only useful if
there are many colliders, which may force the CollisionTraverser to make
multiple passes through the data; in that case, it may be a useful
optimization to group colliders that have similar bounding volumes together
(by giving them similar sort values).
*/
- set_from_collide_mask()
C++ Interface: set_from_collide_mask(const CollisionNode self, BitMask mask)
- /**
Sets the “from” CollideMask. In order for a collision to be detected from
this object into another object, the intersection of this object’s “from”
mask and the other object’s “into” mask must be nonzero.
*/
- set_into_collide_mask()
C++ Interface: set_into_collide_mask(const CollisionNode self, BitMask mask)
- /**
Sets the “into” CollideMask. In order for a collision to be detected from
another object into this object, the intersection of the other object’s
“from” mask and this object’s “into” mask must be nonzero.
*/
- set_solid()
C++ Interface: set_solid(const CollisionNode self, int n, CollisionSolid solid)
- /**
Replaces the solid with the indicated index.
*/
- solids