UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ChaosTrailingEventFilter.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include "CoreMinimal.h"
6#include "ChaosFilter.h"
7#include "EventsData.h"
8#include "ChaosTrailingEventFilter.generated.h"
9
10// A trailing event data structure.
11USTRUCT(BlueprintType)
13{
15
16
17 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
18 FVector Location;
19
21 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
23
25 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
27
29 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
30 float Mass;
31
33 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
34 int32 ParticleIndex;
35
37 : Location(FVector::ZeroVector)
38 , Velocity(FVector::ZeroVector)
39 , AngularVelocity(FVector::ZeroVector)
40 , Mass(0.0f)
41 , ParticleIndex(INDEX_NONE)
42 {
43 }
44};
45
46// Enumeration defining how to sort trailing results
47UENUM(BlueprintType)
57
58USTRUCT(BlueprintType)
60{
62
63
64 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
65 int32 MaxNumberOfResults;
66
68 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
69 float MinMass;
70
72 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
73 float MinSpeed;
74
76 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
77 float MinAngularSpeed;
78
80 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Filters")
82
84 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Sort")
86
88 : MaxNumberOfResults(0)
89 , MinMass(0.0f)
90 , MinSpeed(0.0f)
91 , MinAngularSpeed(0.0f)
92 , MaxDistance(0.0f)
94 {
95 }
96};
97
99 : public IChaosEventFilter<Chaos::FTrailingDataArray, TArray<FChaosTrailingEventData>, EChaosTrailingSortMethod>
100{
101public:
103
105
107
108private:
109 FChaosTrailingEventFilter() : TrailingEventRequestSettings(nullptr) {}
110 const FChaosTrailingEventRequestSettings* TrailingEventRequestSettings;
111};
EChaosTrailingSortMethod
Definition ChaosTrailingEventFilter.h:49
@ INDEX_NONE
Definition CoreMiscDefines.h:150
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
void Sort(T *First, const int32 Num, const PREDICATE_CLASS &Predicate)
Definition Sorting.h:78
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition ChaosTrailingEventFilter.h:100
FChaosTrailingEventFilter(FChaosTrailingEventRequestSettings *FilterSettingsIn)
Definition ChaosTrailingEventFilter.h:102
virtual GEOMETRYCOLLECTIONENGINE_API void SortEvents(TArray< FChaosTrailingEventData > &InOutTrailingEvents, EChaosTrailingSortMethod SortMethod, const FTransform &InTransform) override
Definition ChaosTrailingEventFilter.cpp:65
virtual GEOMETRYCOLLECTIONENGINE_API void FilterEvents(const FTransform &ChaosComponentTransform, const Chaos::FTrailingDataArray &RawTrailingDataArray) override
Definition ChaosTrailingEventFilter.cpp:7
Definition ChaosFilter.h:11
Definition ChaosTrailingEventFilter.h:13
Definition ChaosTrailingEventFilter.h:60