18#include "ParticleSystemComponent.generated.h"
158 , AsyncActorVelocity(
FVector::ZeroVector)
159 , bAsyncDataCopyIsValid(
false)
168 AsyncActorToWorld =
Actor->ActorToWorld();
169 AsyncActorVelocity =
Actor->GetVelocity();
172 bAsyncDataCopyIsValid =
true;
178 bAsyncDataCopyIsValid =
false;
183 if(bAsyncDataCopyIsValid)
185 return AsyncActorToWorld;
190 return Actor->ActorToWorld();
198 if (bAsyncDataCopyIsValid)
200 return AsyncActorVelocity;
205 return Actor->GetVelocity();
214 bool bAsyncDataCopyIsValid;
338 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category =
"Effects|Components|ParticleSystem")
341 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Effects|Components|ParticleSystem")
344 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Effects|Components|ParticleSystem")
347 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Effects|Components|ParticleSystem")
350 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Effects|Components|ParticleSystem")
353 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category = "
Effects|Components|ParticleSystem")
356 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category = "
Effects|Components|ParticleSystem")
359 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category = "
Effects|Components|ParticleSystem")
362 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Effects|Components|ParticleSystem")
365 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Effects|Components|ParticleSystem")
368 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category = "
Effects|Components|ParticleSystem")
371 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category = "
Effects|Components|ParticleSystem")
374 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category = "
Effects|Components|ParticleSystem")
378UCLASS(Abstract, MinimalAPI)
385 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
389 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
393 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
400 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
407 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
414 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
420 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
430 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
442 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
452 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
460 UFUNCTION(BlueprintCallable, Category =
"Effects|Components|ParticleSystem")
474#if WITH_PER_COMPONENT_PARTICLE_PERF_STATS
493 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Particles)
512 uint8 bIsElligibleForAsyncTick:1;
514 uint8 bIsElligibleForAsyncTickComputed:1;
528 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=Particles)
536 uint8 bJustRegistered:1;
546 UPROPERTY(EditAnywhere, BlueprintReadWrite, AdvancedDisplay, Category=Particles)
556 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category=Attachment)
577 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=LOD)
596 uint8 bAutoDestroy : 1;
607 uint8 bAsyncDataCopyIsValid:1;
650 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=LOD)
674 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=Particles)
702 float WarmupTickRate;
713 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=Particles)
714 float SecondsBeforeInactive;
728#if WITH_EDITORONLY_DATA
765 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category=Particles)
766 float CustomTimeDilation;
804#if WITH_EDITORONLY_DATA
817 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = Attachment, meta = (EditCondition =
"bAutoManageAttachment"))
841 UFUNCTION(BlueprintCallable, Category="
Effects|Components|ParticleSystem", meta=(DeprecatedFunction, DeprecationMessage="Please use
Set Auto Attachment Parameters"))
889 ENGINE_API bool ShouldManageSignificance()
const;
915 inline const FTransform& GetAsyncComponentToWorld()
919 check(bAsyncDataCopyIsValid);
929 check(bAsyncDataCopyIsValid);
939 check(bAsyncDataCopyIsValid);
949 check(bAsyncDataCopyIsValid);
975 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
1046 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1059 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1072 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1085 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1098 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1111 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1124 UFUNCTION(BlueprintCallable, Category = "
Effects|Components|ParticleSystem")
1180 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
1318 class FInstanceOwner;
1340#if WITH_STATE_STREAM_ACTOR
1348 ENGINE_API virtual void CheckForErrors()
override;
1350 ENGINE_API virtual bool IsReadyForOwnerToAutoDestroy()
const override;
1352 virtual UObject const* AdditionalStatObject()
const override
1356 ENGINE_API virtual void SetComponentTickEnabled(
bool bEnabled)
override;
1357 ENGINE_API virtual bool IsComponentTickEnabled()
const override;
1360 ENGINE_API virtual void OnChildAttached(USceneComponent* ChildComponent)
override;
1361 ENGINE_API virtual void OnChildDetached(USceneComponent* ChildComponent)
override;
1363 ENGINE_API virtual void OnEndOfFrameUpdateDuringTick()
override;
1366 ENGINE_API virtual void SendRenderTransform_Concurrent()
override;
1367 ENGINE_API virtual void DestroyRenderState_Concurrent()
override;
1368 ENGINE_API virtual void OnRegister()
override;
1369 ENGINE_API virtual void OnUnregister()
override;
1370 ENGINE_API virtual void SendRenderDynamicData_Concurrent()
override;
1372#if WITH_EDITORONLY_DATA
1373 virtual bool RequiresGameThreadEndOfFrameUpdates()
const override {
return true; }
1374 virtual bool RequiresGameThreadEndOfFrameRecreate()
const override {
return true; }
1431 ENGINE_API virtual void BeginDestroy()
override;
1432 ENGINE_API virtual void FinishDestroy()
override;
1439 ENGINE_API virtual FString GetDetailedInfoInternal()
const override;
1455 ENGINE_API virtual bool ShouldActivate()
const override;
1475 inline bool CanTickInAnyThread()
1477 if (!bIsElligibleForAsyncTickComputed)
1479 ComputeCanTickInAnyThread();
1481 return bIsElligibleForAsyncTick;
1490 UFUNCTION(BlueprintCallable, Category =
"Rendering|Material")
1583 ENGINE_API void AutoPopulateInstanceProperties();
1650 UFUNCTION(BlueprintCallable, Category=
"Effects|Components|ParticleSystem")
#define NULL
Definition oodle2base.h:134
#define check(expr)
Definition AssertionMacros.h:314
@ INDEX_NONE
Definition CoreMiscDefines.h:150
@ ForceInit
Definition CoreMiscDefines.h:155
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_MULTICAST_DELEGATE_TwoParams(DelegateName, Param1Type, Param2Type)
Definition DelegateCombinations.h:58
#define DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(DelegateName, Param1Type, Param1Name)
Definition DelegateCombinations.h:53
ELevelTick
Definition EngineBaseTypes.h:70
EAttachmentRule
Definition EngineTypes.h:62
ETrailWidthMode
Definition EngineTypes.h:682
return true
Definition ExternalRpcRegistry.cpp:601
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
EParticleSignificanceLevel
Definition ParticleHelper.h:2398
EParticleSysParamType
Definition ParticleSystemComponent.h:47
@ PSPT_MAX
Definition ParticleSystemComponent.h:57
ParticleReplayState
Definition ParticleSystemComponent.h:63
@ PRS_MAX
Definition ParticleSystemComponent.h:72
EParticleEventType
Definition ParticleSystemComponent.h:80
@ UMETA
Definition ParticleSystemComponent.h:48
@ EPET_MAX
Definition ParticleSystemComponent.h:93
USkinnedMeshComponent float
Definition SkinnedMeshComponent.h:60
CORE_API bool IsInGameThread()
Definition ThreadingBase.cpp:185
EPSCPoolMethod
Definition WorldPSCPool.h:16
Definition Archive.h:1208
Definition FXSystemPrivate.h:188
Definition NameTypes.h:617
Definition ParticleHelper.h:2241
Definition ParticleSystemSceneProxy.h:37
Definition ParticleSystemManager.h:82
Definition PrimitiveSceneProxy.h:296
Definition UnrealType.h:174
Definition ActorComponent.h:47
Definition RenderCommandFence.h:15
Definition TextureStreamingTypes.h:223
Definition EnumAsByte.h:22
UE_FORCEINLINE_HINT ReferencedType * GetReference() const
Definition RefCounting.h:584
Definition ContainerAllocationPolicies.h:894
Definition UniquePtr.h:107
Definition AnimNotifyState.h:25
Definition ParticleSystem.h:118
Definition ParticleSystemComponent.h:380
virtual void DeactivateImmediate()
Definition ParticleSystemComponent.h:469
virtual void ActivateSystem(bool bFlagAsJustAttached=false)
Definition ParticleSystemComponent.h:466
virtual uint32 GetApproxMemoryUsage() const
Definition ParticleSystemComponent.h:464
Definition MaterialInstanceDynamic.h:15
Definition MaterialInterface.h:296
Definition ParticleSystemReplay.h:68
Definition ParticleSystem.h:160
Definition PhysicalMaterial.h:104
Definition EngineTypes.h:164
Type
Definition EngineTypes.h:166
@ CanBeOccluded
Definition ScenePrivate.h:2490
Definition SceneComponent.h:24
ENGINE_API FBox CalcBounds(const FVector &P0, const FVector &P1, const FVector &P2, const FVector &P3)
Definition BezierUtilities.cpp:26
FIntermediate3DTransform GetComponentTransform(const UObject *Object)
Definition MovieSceneTracksCustomAccessors.cpp:18
@ false
Definition radaudio_common.h:23
U16 Index
Definition radfft.cpp:71
Definition EngineBaseTypes.h:571
Definition BodyInstance.h:320
Definition CollisionQueryParams.h:430
Definition ParticleHelper.h:1265
Definition ParticleHelper.h:1174
Definition ParticleSystemComponent.h:335
Definition HitResult.h:21
Definition ParticleSystemManager.h:29
Definition ParticleEmitterInstances.h:1701
Definition ParticleEmitterInstances.h:226
Definition ParticleSystemComponent.h:316
int32 ParticleCount
Definition ParticleSystemComponent.h:317
FParticleEventBurstData()
Definition ParticleSystemComponent.h:319
Definition ParticleSystemComponent.h:287
UPhysicalMaterial * PhysMat
Definition ParticleSystemComponent.h:301
int32 Item
Definition ParticleSystemComponent.h:295
FVector Normal
Definition ParticleSystemComponent.h:289
FParticleEventCollideData()
Definition ParticleSystemComponent.h:303
float Time
Definition ParticleSystemComponent.h:292
FName BoneName
Definition ParticleSystemComponent.h:298
Definition ParticleSystemComponent.h:224
FVector Velocity
Definition ParticleSystemComponent.h:238
FVector Location
Definition ParticleSystemComponent.h:235
float EmitterTime
Definition ParticleSystemComponent.h:232
FParticleEventData()
Definition ParticleSystemComponent.h:243
int32 Type
Definition ParticleSystemComponent.h:226
TArray< class UParticleModuleEventSendToGame * > EventData
Definition ParticleSystemComponent.h:241
FName EventName
Definition ParticleSystemComponent.h:229
Definition ParticleSystemComponent.h:279
Definition ParticleSystemComponent.h:329
Definition ParticleSystemComponent.h:272
Definition ParticleSystemComponent.h:254
float ParticleTime
Definition ParticleSystemComponent.h:256
FParticleExistingData()
Definition ParticleSystemComponent.h:261
FVector Direction
Definition ParticleSystemComponent.h:259
Definition ParticlePerfStats.h:302
Definition ParticlePerfStats.h:171
Definition ParticleSystemComponent.h:105
FTransform GetAsyncActorToWorld() const
Definition ParticleSystemComponent.h:181
void ResetAsyncActorCache()
Definition ParticleSystemComponent.h:175
void UpdateAsyncActorCache()
Definition ParticleSystemComponent.h:163
FVector GetAsyncActorVelocity() const
Definition ParticleSystemComponent.h:196
Definition ParticleSystemStateStreamHandle.h:15
Definition UnrealType.h:7001
Definition RandomStream.h:20
Definition ResourceSize.h:31
Definition IsPODType.h:12
@ Value
Definition IsPODType.h:13
Definition ObjectPtr.h:488
Definition WeakObjectPtrTemplates.h:25
Definition BoxSphereBounds.h:25
static CORE_API const TVector< double > ZeroVector
Definition Vector.h:79