Impact CFX API 1.5.0
Comprehensive API documentation for Impact CFX - Collision Effects System
Loading...
Searching...
No Matches
ImpactCFX Namespace Reference

Classes

class  AlignmentAxisUtilities
 Utility class for AlignmentAxis. More...
 
struct  ArrayChunk
 Holds an index offset and length for a chunk of data in an array. More...
 
class  Bitmask
 Utility class for manipulating bitmasks. More...
 
struct  CollisionInputData
 Holds input data suitable for jobs for a collision event. More...
 
struct  CollisionObjectPair
 A pair of objects involved in a collision. More...
 
struct  CollisionResultData
 Compiles all of the common data created from a collision. More...
 
class  CollisionTypeExtensions
 Extension methods for the CollisionType enum. More...
 
class  ContactPointIDGenerator
 Utility for generating an ID for contact points. Used to identify contact points for sliding and rolling. More...
 
class  EffectObjectPool
 Common implementation for an object pool used by effects with a template object. More...
 
class  EffectUtility
 Utilities for effects. More...
 
class  EffectVelocityModifier
 Class for editing effect modifiers based on velocity. More...
 
class  GameObjectExtensions
 Extensions for working with GameObjects. More...
 
interface  IEffectData
 Interface for impact effect data that is suitable for jobs. More...
 
interface  IEffectResult
 General interface for results of effects that is suitable for jobs. More...
 
interface  IImpactObject
 Interface for all impact objects. More...
 
class  ImpactAttachedEffectManager
 Component that manages effects that are attached to an object. More...
 
class  ImpactCFXGlobal
 Global class for managing and interfacing with the active Impact CFX Manager instance. More...
 
class  ImpactCFXLogger
 Utility class for logging common Impact CFX debug messages. More...
 
class  ImpactCFXManager
 The primary manager of the entire Impact CFX system. More...
 
struct  ImpactCollision
 Wraps data for a 3D or 2D collision. More...
 
struct  ImpactContactPoint
 Wraps data for a single 3D or 2D contact point. More...
 
class  ImpactEffectAuthoringBase
 Base class for creating impact effect assets. More...
 
class  ImpactEffectProcessorBase
 Base class for effect processing. More...
 
struct  ImpactEffectProcessorJob
 Generic job for processing collision data to create effect results. More...
 
class  ImpactMaterialAuthoring
 
struct  ImpactMaterialData
 Holds basic impact material data that is suitable for jobs and burst. More...
 
struct  ImpactMaterialDataResetJob
 
class  ImpactMaterialMappingProcessor
 
class  ImpactMaterialProcessorBase
 Base for impact material processors that get the material data for a specific kind of object. More...
 
class  ImpactMaterialRegistry
 
class  ImpactMultiPrefabEffectAuthoringBase
 Base class for effect assets for effects that use object pooling. More...
 
class  ImpactMultiPrefabEffectProcessor
 Provides core implementation for effects that use multiple pooled prefabs. More...
 
struct  ImpactMultiPrefabJob
 
class  ImpactObjectBase
 Base class for impact objects. More...
 
class  ImpactObjectChild
 Implementation of an Impact Object for objects that are children of a parent object. More...
 
class  ImpactObjectCustomVelocity
 Implementation of an Impact Object that calculates a velocity using the position and rotation of the object. More...
 
struct  ImpactObjectData
 Container for basic Impact Object data used for queueing collisions. More...
 
class  ImpactObjectRigidbody
 Implementation of an Impact Object for objects with a 3D or 2D rigidbody. More...
 
class  ImpactObjectRigidbodyCheap
 A "cheap" 3D or 2D rigidbody that does not have FixedUpdate. More...
 
class  ImpactObjectSingleMaterial
 Implementation of an Impact Object with a single material for the object. More...
 
class  ImpactObjectTerrain
 Implementation of an Impact Object specifically for terrains. More...
 
class  ImpactPhysicMaterialMapping
 Mapping from a 3D physic material to an impact material. More...
 
class  ImpactPhysicsMaterial2DMapping
 Mapping from a 2D physics material to an impact material. More...
 
class  ImpactPooledEffectAuthoringBase
 Base class for creating impact effect assets for effects that need to use object pooling. More...
 
class  ImpactPooledEffectProcessor
 Provides common implementation for an effect that relies on pooled objects. More...
 
class  ImpactRaycaster
 Convenience methods for triggering effects via raycasting. More...
 
class  ImpactSimpleEffectProcessor
 Base class that provides a common implementation for simple effects that do not require object pooling. More...
 
class  ImpactSingleMaterialProcessor
 
struct  ImpactTag
 A value for a single impact tag. More...
 
struct  ImpactTagMask
 Bitmask for holding many impact tag values. More...
 
struct  ImpactTagMaskFilter
 Used to filter tag values. More...
 
class  ImpactTerrainMaterialProcessor
 
struct  ImpactVelocityData
 Holds data suitable for jobs about the impact velocity at a collision point. More...
 
struct  ImpactVelocityDataJob
 
interface  IMultiPrefabEffectData
 Interface for impact effect data that supports multiple pooled prefabs. More...
 
interface  IMultiPrefabEffectResult
 Interface for results of effects that support multiple pooled prefabs. More...
 
interface  IPooledEffectData
 Interface for impact pooled effect data that is suitable for jobs. More...
 
struct  MaterialCompositionData
 Holds impact material data suitable for jobs retrieved at a single collision point. More...
 
struct  ObjectID
 Wrapper for object/asset IDs. More...
 
class  ObjectIDExtensions
 
class  OverrideValue
 Container for a value that can be overriden from it's automatically set value. More...
 
class  OverrideValueInt
 Container for an overridable integer value. More...
 
class  PhysicsUtility
 Utility methods for physics calculations. More...
 
class  PooledEffectObjectBase
 Base class for an effect object (such as an audio source, particle system, or decal) that is part of on object pool. More...
 
struct  Range
 Represents a range between a minimum and a maximum value. More...
 
class  RigidbodyContainer
 Wrapper class for 3D and 2D rigidbodies that handles tracking the rigidbody state. More...
 
struct  RigidbodyData
 Holds rigidbody data in a form suitable for jobs. More...
 
struct  RigidbodyStateData
 Holds rigidbody state data in a form suitable for jobs. More...
 
struct  TransformData
 Holds transform data in a form suitable for jobs. More...
 

Enumerations

enum  AlignmentAxis { ZDown = 0 , ZUp = 1 , YDown = 2 , YUp = 3 }
 Modes for setting how an object's axes should be aligned with a surface. More...
 
enum  CollisionNormalMode { Default = 0 , Inverted = 1 }
 Behavior for collision normals. More...
 
enum  CollisionSelectionMode { Velocity = 0 , Random = 1 }
 Enum for configuring how items from an array are chosen for effects. More...
 
enum  CollisionType { Collision = 0 , Slide = 1 , Roll = 2 }
 The type of collision. More...
 
enum  CollisionVelocityMethod { RelativeVelocities = 0 , ChangeInVelocity = 1 , CollisionMessage = 2 }
 
enum  EffectAttachMode { None = 0 , TriggerObject = 1 , HitObject = 2 }
 Behavior for attaching effects to colliding objects. More...
 
enum  EffectIntervalType { Time = 0 , Distance = 1 }
 The type of interval for effects like particles and decals when placing for sliding and rolling. More...
 
enum  ObjectIDMode { InstanceID = 0 , ObjectName = 1 }
 Defines behavior for getting object/asset IDs. More...
 
enum  ParticleEffectType { OneShot = 0 , Looped = 1 }
 Whether a particle is a one-shot or looped effect. More...
 
enum  PhysicsType { Unknown = 0 , Physics3D = 1 , Physics2D = 2 }
 Whether the collision was created using 3D or 2D physics. More...
 

Enumeration Type Documentation

◆ AlignmentAxis

Modes for setting how an object's axes should be aligned with a surface.

Enumerator
ZDown 

Orient the Z-axis down into the surface.

ZUp 

Orient the Z-axis up away the surface.

YDown 

Orient the Y-axis down into the surface.

YUp 

Orient the Y-axis up away the surface.

◆ CollisionNormalMode

Behavior for collision normals.

Enumerator
Default 

Use the default normal from the contact point, facing away from the collision surface.

Inverted 

Invert the normal from the contact point, facing into the collision surface.

◆ CollisionSelectionMode

Enum for configuring how items from an array are chosen for effects.

Enumerator
Velocity 

Items will be selected based on the collision velocity, with the first element being the lowest velocity and the last element being the highest velocity.

Random 

Items will be selected at random.

◆ CollisionType

The type of collision.

Enumerator
Collision 

A single-event collision.

Slide 

A continuous collision for sliding.

Roll 

A continuous collision for rolling.

◆ EffectAttachMode

Behavior for attaching effects to colliding objects.

Enumerator
None 

Don't attach to any objects.

TriggerObject 

Attach the effect to the object that triggered the effect.

HitObject 

Attach the effect to the object that was hit.

◆ EffectIntervalType

The type of interval for effects like particles and decals when placing for sliding and rolling.

Enumerator
Time 

Interval is based on time.

Distance 

Interval is based on distance.

◆ ObjectIDMode

Defines behavior for getting object/asset IDs.

Enumerator
InstanceID 

The GetInstanceID() function will be used.

ObjectName 

The ID will be derived from the object's name.

◆ ParticleEffectType

Whether a particle is a one-shot or looped effect.

Enumerator
OneShot 

The particles are a one-shot effect.

Looped 

The particles are a looping effect.

◆ PhysicsType

Whether the collision was created using 3D or 2D physics.

Enumerator
Unknown 

The collision was created using an unknown physics type.

Physics3D 

The collision was created using 3D physics.

Physics2D 

The collision was created using 2D physics.