UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ParticleModuleCollision.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3
4#pragma once
5
6#include "CoreMinimal.h"
12#include "ParticleModuleCollision.generated.h"
13
17struct FHitResult;
19
20UCLASS(editinlinenew, hidecategories=Object, MinimalAPI, meta=(DisplayName = "Actor Collision"))
22{
24
25
29 UPROPERTY(EditAnywhere, Category=Collision)
30 struct FRawDistributionVector DampingFactor;
31
36 UPROPERTY(EditAnywhere, Category=Collision)
37 struct FRawDistributionVector DampingFactorRotation;
38
43 UPROPERTY(EditAnywhere, Category=Collision)
44 struct FRawDistributionFloat MaxCollisions;
45
62 UPROPERTY(EditAnywhere, Category=Collision)
63 TEnumAsByte<enum EParticleCollisionComplete> CollisionCompletionOption;
64
68 UPROPERTY(EditAnywhere, Category = Collision)
70
74 FCollisionObjectQueryParams ObjectParams;
75
76
85 UPROPERTY(EditAnywhere, Category=Collision)
86 uint32 bApplyPhysics:1;
87
90 UPROPERTY(EditAnywhere, Category=Collision)
91 uint32 bIgnoreTriggerVolumes:1;
92
97 UPROPERTY(EditAnywhere, Category=Collision)
98 struct FRawDistributionFloat ParticleMass;
99
104 UPROPERTY(EditAnywhere, Category=Collision)
105 float DirScalar;
106
113 UPROPERTY(EditAnywhere, Category=Collision)
114 uint32 bPawnsDoNotDecrementCount:1;
115
122 UPROPERTY(EditAnywhere, Category=Collision)
123 uint32 bOnlyVerticalNormalsDecrementCount:1;
124
132 UPROPERTY(EditAnywhere, Category=Collision)
133 float VerticalFudgeFactor;
134
142 UPROPERTY(EditAnywhere, Category=Collision)
143 struct FRawDistributionFloat DelayAmount;
144
146 UPROPERTY(EditAnywhere, Category=Performance)
147 uint32 bDropDetail:1;
148
150 UPROPERTY(EditAnywhere, Category=Performance)
151 uint32 bCollideOnlyIfVisible:1;
152
157 UPROPERTY(EditAnywhere, Category=Collision)
158 uint32 bIgnoreSourceActor:1;
159
161 UPROPERTY(EditAnywhere, Category=Performance)
162 float MaxCollisionDistance;
163
165 void InitializeDefaults();
166
167 //Begin UObject Interface
168#if WITH_EDITOR
169 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
170#endif // WITH_EDITOR
171 virtual void PostInitProperties() override;
172 virtual void PostLoad() override;
173 //End UObject Interface
174
175 //Begin UParticleModule Interface
176 virtual void Spawn(const FSpawnContext& Context) override;
177 virtual void Update(const FUpdateContext& Context) override;
178 virtual uint32 RequiredBytes(UParticleModuleTypeDataBase* TypeData) override;
179 virtual uint32 RequiredBytesPerInstance() override;
180 virtual uint32 PrepPerInstanceBlock(FParticleEmitterInstance* Owner, void* InstData) override;
181 virtual void SetToSensibleDefaults(UParticleEmitter* Owner) override;
182 virtual bool GenerateLODModuleValues(UParticleModule* SourceModule, float Percentage, UParticleLODLevel* LODLevel) override;
183 virtual bool CanTickInAnyThread() override;
184 //End UParticleModule Interface
185
199 virtual bool PerformCollisionCheck(FParticleEmitterInstance* Owner, FBaseParticle* InParticle,
200 FHitResult& Hit, AActor* SourceActor, const FVector& End, const FVector& Start, const FVector& Extent);
201};
202
203
204
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
@ Percentage
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Actor.h:257
Definition Array.h:670
Definition EnumAsByte.h:22
Definition ParticleEmitter.h:98
Definition ParticleLODLevel.h:22
Definition ParticleModuleCollisionBase.h:34
Definition ParticleModuleCollision.h:22
Definition ParticleModuleTypeDataBase.h:18
Definition ParticleModule.h:149
Definition ParticleHelper.h:181
Definition CollisionQueryParams.h:430
Definition HitResult.h:21
Definition ParticleEmitterInstances.h:226
Definition UnrealType.h:6865
Definition DistributionFloat.h:28
Definition DistributionVector.h:59