Drag[en]gine Script Module DragonScript  1.21
Dragengine.BaseGameApp.CollisionFilterBit Class Reference

Collision filter bits. More...

Inheritance diagram for Dragengine.BaseGameApp.CollisionFilterBit:

Static Public Attributes

static final int actor = 2
 Collision filter for BaseActor collider. More...
 
static final int actorAI = 3
 Collision filter for BaseActor AI collider. More...
 
static final int custom = 7
 First custom collision filter bit. More...
 
static final int dynamic = 1
 Geometry under influence of CollisionResponse.dynamic or CollisionResponse.kinematic. More...
 
static final int forceField = 6
 Collision filter for force fields. More...
 
static final int geometry = 0
 Default collision filter for CollisionResponse.none geometry. More...
 
static final int particle = 5
 Collision filter for particles. More...
 
static final int trigger = 4
 Collision filter for triggers and touch sensors. More...
 

Detailed Description

Collision filter bits.

Use like

filter.setBit(BaseGameApp.CollisionFilterBit.geometry)

. Add your own collision filter bits with value BaseGameApp.CollisionFilterBit.custom onwards. Up to 64 bits can be used in collision filters.

Using these collision filter bits is not mandatory. If you create your own list from scratch make sure to adjust the collision filter of all elements classes.

Member Data Documentation

◆ actor

final int Dragengine.BaseGameApp.CollisionFilterBit.actor = 2
static

Collision filter for BaseActor collider.

Separate collision filter bit is required since BaseActor owns two colliders. The regular collider is used for collision with other objects and is typically a ColliderComponent closely fitting the actor geometry. The AI collider is used to move the actor and do AI logic. The two of them are not allowed to collide.

CollisionFilterBit.actor does not collide with CollisionFilterBit.geometry nor CollisionFilterBit.actorAI.

◆ actorAI

final int Dragengine.BaseGameApp.CollisionFilterBit.actorAI = 3
static

Collision filter for BaseActor AI collider.

Separate collision filter bit is required since BaseActor owns two colliders. The regular collider is used for collision with other objects and is typically a ColliderComponent closely fitting the actor geometry. The AI collider is used to move the actor and do AI logic. The two of them are not allowed to collide.

CollisionFilterBit.actorAI does collide with CollisionFilterBit.geometry and CollisionFilterBit.actorAI but not CollisionFilterBit.actor.

◆ custom

final int Dragengine.BaseGameApp.CollisionFilterBit.custom = 7
static

First custom collision filter bit.

Add any number of custom filters starting with this value to properly support more default filter bits added in the future.

◆ dynamic

final int Dragengine.BaseGameApp.CollisionFilterBit.dynamic = 1
static

Geometry under influence of CollisionResponse.dynamic or CollisionResponse.kinematic.

Kinematic and dynamic geometry is used for all geometry which moves either under kinematic or dynamic control. Collides with CollisionFilterBit.geometry, CollisionFilterBit.actor and other CollisionFilterBit.dynamic. Usually slower to process by physics modules than CollisionFilterBit.geometry.

◆ forceField

final int Dragengine.BaseGameApp.CollisionFilterBit.forceField = 6
static

Collision filter for force fields.

◆ geometry

final int Dragengine.BaseGameApp.CollisionFilterBit.geometry = 0
static

Default collision filter for CollisionResponse.none geometry.

Geometry does not collide with other geometry. They only collider with dynamic elements like CollisionFilterBit.actorAI and CollisionFilterBit.dynamic.

◆ particle

final int Dragengine.BaseGameApp.CollisionFilterBit.particle = 5
static

Collision filter for particles.

◆ trigger

final int Dragengine.BaseGameApp.CollisionFilterBit.trigger = 4
static

Collision filter for triggers and touch sensors.

Used by trigger and touch sensor based elements to limit what elements can touch a trigger. Elements able to trigger triggers have to set this bit in their collision filter filter.


The documentation for this class was generated from the following file: