Collision channels in C++
Channels are defined only with numeric identifiers in the engine code. This makes it difficult to know which one is which.
Define custom constants for the channels to make them easier to use:
//all the default object channels
#define OBJCH_WORLD_STATIC EObjectTypeQuery::ObjectTypeQuery1
#define OBJCH_WORLD_DYNAMIC EObjectTypeQuery::ObjectTypeQuery2
#define OBJCH_PAWN EObjectTypeQuery::ObjectTypeQuery3
#define OBJCH_PHYSICS_BODY EObjectTypeQuery::ObjectTypeQuery4
#define OBJCH_VEHICLE EObjectTypeQuery::ObjectTypeQuery5
#define OBJCH_DESTRUCTIBLE EObjectTypeQuery::ObjectTypeQuery6
//custom object channels
#define OBJCH_PROJECTILE EObjectTypeQuery::ObjectTypeQuery7
#define OBJCH_PLAYER_PAWN EObjectTypeQuery::ObjectTypeQuery8
UEngineTypes
has some functions that allow converting these to some other types which are used by functions like the ones in UKismetSystemLibrary