41 get_from_collide_mask()
const {
42 return _from_collide_mask;
51 get_into_collide_mask()
const {
62 mark_internal_bounds_stale();
68 INLINE
size_t CollisionNode::
69 get_num_solids()
const {
70 return _solids.size();
77 get_solid(
size_t n)
const {
78 nassertr(n < get_num_solids(),
nullptr);
79 return _solids[n].get_read_pointer();
86 modify_solid(
size_t n) {
87 nassertr(n < get_num_solids(),
nullptr);
88 mark_internal_bounds_stale();
89 return _solids[n].get_write_pointer();
97 nassertv(n < get_num_solids());
99 mark_internal_bounds_stale();
107 if (n > _solids.size()) {
111 mark_internal_bounds_stale();
120 nassertv(n < get_num_solids());
121 _solids.erase(_solids.begin() + n);
122 mark_internal_bounds_stale();
132 mark_internal_bounds_stale();
133 return _solids.size() - 1;
140 INLINE
int CollisionNode::
141 get_collider_sort()
const {
142 return _collider_sort;
159 _collider_sort = sort;
166 get_default_collide_mask() {
167 return default_collision_node_collide_mask;
insert_solid
Inserts the indicated solid to the node at the indicated position.
set_solid
Replaces the solid with the indicated index.
void set_collide_mask(CollideMask mask)
Simultaneously sets both the "from" and "into" CollideMask values to the same thing.
size_t add_solid(const CollisionSolid *solid)
Adds the indicated solid to the node.
remove_solid
Removes the solid with the indicated index.
The abstract base class for all things that can collide with other things in the world, and all the things they can collide with (except geometry).
set_into_collide_mask
Sets the "into" CollideMask.
set_from_collide_mask
Sets the "from" CollideMask.
set_into_collide_mask
Sets the "into" CollideMask.
void clear_solids()
Removes all solids from the node.
set_collider_sort
Sets a particular collider_sort value on this node.
get_into_collide_mask
Returns the "into" collide mask for this node.