Navigation
Unreal Engine C++ API Reference > Plugins > ChaosNiagara
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UNiagaraMergeable
- UNiagaraDataInterfaceBase
- UNiagaraDataInterface
- UNiagaraDataInterfaceChaosDestruction
References
Module | ChaosNiagara |
Header | /Engine/Plugins/Experimental/ChaosNiagara/Source/ChaosNiagara/Classes/NiagaraDataInterfaceChaosDestruction.h |
Include | #include "NiagaraDataInterfaceChaosDestruction.h" |
Syntax
UCLASS&40;EditInlineNew, Category&61;"Chaos Niagara", Meta&61;&40;DisplayName&61;"Chaos Destruction Data"&41;&41;
class UNiagaraDataInterfaceChaosDestruction : public UNiagaraDataInterface
Remarks
Data Interface allowing sampling of Chaos Destruction data.
Variables
Type | Name | Description | |
---|---|---|---|
![]() ![]() ![]() |
bool | bApplyMaterialsFilter | Materials Filter |
![]() ![]() ![]() |
bool | bGetExternalBreakingData | TODO: Explanatory comment |
![]() ![]() ![]() ![]() |
bool | bGetExternalCollisionData | TODO: Explanatory comment |
![]() ![]() ![]() ![]() |
bool | bGetExternalTrailingData | TODO: Explanatory comment |
![]() |
TArray< Chaos::FBreakingDataExt > | BreakingEvents | |
![]() ![]() ![]() |
TSet< TObjectPtr< UPhysicalMaterial > > | ChaosBreakingMaterialSet | TODO: Explanatory comment |
![]() ![]() ![]() |
TSet< TObjectPtr< AChaosSolverActor > > | ChaosSolverActorSet | Chaos Solver |
![]() |
TArray< Chaos::FCollidingDataExt > | CollisionEvents | |
![]() |
TArray< FVector > | ColorArray | Colors for debugging particles. |
![]() ![]() ![]() |
int32 | DataProcessFrequency | Number of times the RBD collision data gets processed every second |
![]() ![]() ![]() |
EDataSortTypeEnum | DataSortingType | Sorting method to sort the collision data |
![]() ![]() ![]() |
EDataSourceTypeEnum | DataSourceType | |
![]() ![]() ![]() |
EDebugTypeEnum | DebugType | Debug visualization method |
![]() ![]() ![]() |
bool | DoSpatialHash | |
![]() ![]() ![]() |
bool | DoSpawn | Turn on/off particle spawning |
![]() ![]() ![]() |
FVector2D | ExtentMaxToSpawnMinMax | Min/Max ExtentMax to spawn particles |
![]() ![]() ![]() |
FVector2D | ExtentMinToSpawnMinMax | Min/Max ExtentMin to spawn particles |
![]() ![]() ![]() |
FVector2D | FinalVelocityMagnitudeMinMax | Clamp particles velocity |
![]() |
TSet< UGeometryCollectionComponent * > | GeometryCollectionComponentsFromBreaking | Saving GeometryCollectionComponents from breaking for trailing. |
![]() ![]() ![]() |
FVector2D | ImpulseToSpawnMinMax | Min/Max collision accumulated impulse to spawn particles |
![]() ![]() ![]() |
float | InheritedVelocityMultiplier | How much of the collision velocity gets inherited |
![]() ![]() |
int32 | LastSpawnedPointID | |
![]() ![]() |
float | LastSpawnTime | |
![]() ![]() ![]() |
ELocationFilteringModeEnum | LocationFilteringMode | Location Filtering Mode |
![]() ![]() ![]() |
ELocationXToSpawnEnum | LocationXToSpawn | How to use LocationX to filter |
![]() ![]() ![]() |
FVector2D | LocationXToSpawnMinMax | Min/Max LocationX to spawn particles |
![]() ![]() ![]() |
ELocationYToSpawnEnum | LocationYToSpawn | How to use LocationY to filter |
![]() ![]() ![]() |
FVector2D | LocationYToSpawnMinMax | Min/Max LocationY to spawn particles |
![]() ![]() ![]() |
ELocationZToSpawnEnum | LocationZToSpawn | How to use LocationZ to filter |
![]() ![]() ![]() |
FVector2D | LocationZToSpawnMinMax | Min/Max LocationX to spawn particles |
![]() ![]() ![]() |
FVector2D | MassToSpawnMinMax | Min/Max mass to spawn particles |
![]() ![]() ![]() |
int32 | MaxDataPerCell | |
![]() ![]() ![]() |
float | MaxLatency | |
![]() ![]() ![]() |
int32 | MaxNumberOfDataEntriesToSpawn | Maximum number of collision/breaking/trailing entry used for spawning particles every time data from the physics solver gets processed |
![]() ![]() ![]() |
FVector2D | RandomPositionMagnitudeMinMax | Random displacement value for the particle spawn position |
![]() ![]() ![]() |
ERandomVelocityGenerationTypeEnum | RandomVelocityGenerationType | The method used to create the random velocities for the newly spawned particles |
![]() ![]() ![]() |
FVector2D | RandomVelocityMagnitudeMinMax | Every particles will be spawned with random velocity with magnitude in the range of [RandomVelocityMagnitudeMin, RandomVelocityMagnitudeMax] |
![]() |
bool | ShouldSpawn | |
![]() |
TArray< FSolverData > | Solvers | |
![]() ![]() |
float | SolverTime | |
![]() ![]() ![]() |
FVector2D | SolverTimeToSpawnMinMax | Min/Max solver time mass to spawn particles |
![]() ![]() ![]() |
FVector | SpatialHashVolumeCellSize | SpatialHash volume resolution |
![]() ![]() ![]() |
FVector | SpatialHashVolumeMax | SpatialHash volume max |
![]() ![]() ![]() |
FVector | SpatialHashVolumeMin | SpatialHash volume min |
![]() ![]() ![]() |
float | SpawnChance | For every collision random number of particles will be spawned in the range of [SpawnMultiplierMin, SpawnMultiplierMax] |
![]() ![]() ![]() |
FVector2D | SpawnMultiplierMinMax | For every collision random number of particles will be spawned in the range of [SpawnMultiplierMin, SpawnMultiplierMax] |
![]() ![]() ![]() |
FVector2D | SpeedToSpawnMinMax | Min/Max speed to spawn particles |
![]() ![]() ![]() |
float | SpreadAngleMax | |
![]() ![]() ![]() |
int32 | SurfaceTypeToSpawn | SurfaceType to spawn particles |
![]() ![]() |
float | TimeStampOfLastProcessedData | |
![]() |
TArray< Chaos::FTrailingDataExt > | TrailingEvents | |
![]() ![]() ![]() |
float | TrailMinSpeedToSpawn | Min Linear Speed to generate trailing particles |
![]() ![]() ![]() |
FVector | VelocityOffsetMax | Max Offset value added to spawned particles velocity |
![]() ![]() ![]() |
FVector | VelocityOffsetMin | Min Offset value added to spawned particles velocity |
![]() ![]() ![]() |
FVector2D | VolumeToSpawnMinMax | Min/Max volume to spawn particles |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
UNiagaraDataInterfaceChaosDestruction
(
const FObjectInitializer& ObjectInitializer |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
bool | BreakingCallback
(
FNDIChaosDestruction_InstanceData* InstData |
|
![]() ![]() |
bool | BreakingDataRandomShuffleSortPredicate
(
const Chaos::FBreakingDataExt& Lhs, |
|
![]() ![]() |
bool | BreakingDataSortByMassPredicateMaxToMin
(
const Chaos::FBreakingDataExt& Lhs, |
|
![]() ![]() |
bool | BreakingDataSortByMassPredicateMinToMax
(
const Chaos::FBreakingDataExt& Lhs, |
|
![]() |
bool | CollisionCallback
(
FNDIChaosDestruction_InstanceData* InstData |
|
![]() ![]() |
bool | CollisionDataRandomShuffleSortPredicate
(
const Chaos::FCollidingDataExt& Lhs, |
|
![]() ![]() |
bool | CollisionDataSortByMassPredicateMaxToMin
(
const Chaos::FCollidingDataExt& Lhs, |
Sort predicates to sort data. |
![]() ![]() |
bool | CollisionDataSortByMassPredicateMinToMax
(
const Chaos::FCollidingDataExt& Lhs, |
|
![]() |
void | FilterAllBreakings
(
TArray< Chaos::FBreakingDataExt >& AllBreakingsArray |
|
![]() |
void | FilterAllCollisions
(
TArray< Chaos::FCollidingDataExt >& AllCollisionsArray |
|
![]() |
void | FilterAllTrailings
(
TArray< Chaos::FTrailingDataExt >& AllTrailingsArray |
|
![]() |
void | GetAngularVelocity
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetBreakingData
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetBreakingsToSpawnFromBreakings
(
TArray< Chaos::FBreakingDataExt >& AllBreakingsArray, |
|
![]() |
void | GetCollisionData
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetCollisionsToSpawnFromCollisions
(
TArray< Chaos::FCollidingDataExt >& AllCollisionsArray, |
|
![]() |
void | GetColor
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetDensity
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetExtentMax
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetExtentMin
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetFriction
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
int32 | ||
![]() |
void | GetNormal
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetParticleIdsToSpawnAtTime
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetPointType
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetPosition
(
FVectorVMExternalFunctionContext& Context |
EXPOSED FUNCTIONS. |
![]() |
void | GetRestitution
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetSize
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
float | ||
![]() |
void | GetSolverTime
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetSurfaceType
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetTrailingData
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetTrailingsToSpawnFromTrailings
(
TArray< Chaos::FTrailingDataExt >& AllTrailingsArray, |
|
![]() |
void | GetTransform
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetVelocity
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | GetVolume
(
FVectorVMExternalFunctionContext& Context |
|
![]() |
void | HandleBreakingEvents
(
const Chaos::FBreakingEventData& Event |
|
![]() |
void | HandleCollisionEvents
(
const Chaos::FCollisionEventData& Event |
|
![]() |
void | HandleTrailingEvents
(
const Chaos::FTrailingEventData& Event |
|
![]() |
void | RegisterWithSolverEventManager
(
Chaos::FPhysicsSolver* Solver |
|
![]() |
void | ResetInstData
(
FNDIChaosDestruction_InstanceData* InstData |
|
![]() |
void | SortBreakings
(
TArray< Chaos::FBreakingDataExt >& BreakingsArray |
|
![]() |
void | SortCollisions
(
TArray< Chaos::FCollidingDataExt >& CollisionsArray |
|
![]() |
void | SortTrailings
(
TArray< Chaos::FTrailingDataExt >& TrailingsArray |
|
![]() |
int32 | SpawnParticlesFromBreaking
(
FSolverData SolverData, |
|
![]() |
int32 | SpawnParticlesFromCollision
(
FSolverData SolverData, |
|
![]() |
int32 | SpawnParticlesFromTrailing
(
FSolverData SolverData, |
|
![]() |
bool | TrailingCallback
(
FNDIChaosDestruction_InstanceData* InstData |
|
![]() ![]() |
bool | TrailingDataRandomShuffleSortPredicate
(
const Chaos::FTrailingDataExt& Lhs, |
|
![]() ![]() |
bool | TrailingDataSortByMassPredicateMaxToMin
(
const Chaos::FTrailingDataExt& Lhs, |
|
![]() ![]() |
bool | TrailingDataSortByMassPredicateMinToMax
(
const Chaos::FTrailingDataExt& Lhs, |
Overridden from UNiagaraDataInterface
Type | Name | Description | |
---|---|---|---|
![]() ![]() ![]() |
bool | AppendCompileHash
(
FNiagaraCompileHashVisitor* InVisitor |
GPU sim functionality. |
![]() ![]() ![]() |
bool | CanExecuteOnTarget
(
ENiagaraSimTarget Target |
|
![]() ![]() ![]() |
bool | CopyToInternal
(
UNiagaraDataInterface* Destination |
|
![]() ![]() |
void | DestroyPerInstanceData
(
void* PerInstanceData, |
Destroys the per instance data for this interface. |
![]() ![]() ![]() |
bool | Equals
(
const UNiagaraDataInterface* Other |
Determines if this DataInterface is the same as another. |
![]() ![]() |
bool | GetFunctionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
|
![]() ![]() |
void | GetFunctions
(
TArray< FNiagaraFunctionSignature >& OutFunctions |
Gets all the available functions for this data interface. |
![]() ![]() |
void | GetParameterDefinitionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
|
![]() ![]() |
void | GetVMExternalFunction
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
Returns the delegate for the passed function signature. |
![]() ![]() ![]() |
bool | ||
![]() ![]() |
bool | InitPerInstanceData
(
void* PerInstanceData, |
Initializes the per instance data for this interface. |
![]() ![]() ![]() |
int32 | Returns the size of the per instance data for this interface. | |
![]() ![]() |
bool | PerInstanceTick
(
void* PerInstanceData, |
Ticks the per instance data for this interface, if it has any. |
![]() ![]() |
void | ProvidePerInstanceDataForRenderThread
(
void* DataForRenderThread, |
Subclasses that wish to work with GPU systems/emitters must implement this. |
![]() ![]() |
void | ||
![]() ![]() ![]() |
void | SetShaderParameters
(
const FNiagaraDataInterfaceSetShaderParametersContext& Context |
Set the shader parameters will only be called if the data interface provided shader parameters. |
Overridden from UNiagaraDataInterfaceBase
Type | Name | Description | |
---|---|---|---|
![]() ![]() ![]() |
void | BuildShaderParameters
(
FNiagaraShaderParametersBuilder& ShaderParametersBuilder |
Override this method to provide parameters to the GPU (SRV / UAV / Constants / etc) The most common usage will be to provide a single structure which is nested with other parameters. |
Overridden from UObject
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | BeginDestroy () |
Called before destroying the object. |
![]() ![]() |
void | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally |
![]() ![]() |
void | TGeometryParticleHandle |
|
![]() ![]() |
void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. |