15#include "ParticleSystem.generated.h"
21class UParticleSystemComponent;
116UCLASS(Abstract, MinimalAPI, BlueprintType)
124 UPROPERTY(EditAnywhere, Category = Performance, AdvancedDisplay)
133 UPROPERTY(EditAnywhere, Category = Performance, AdvancedDisplay)
136#if WITH_PER_SYSTEM_PARTICLE_PERF_STATS
148 bool PSOPrecachingLaunched =
false;
170 UPROPERTY(EditAnywhere, Category=ParticleSystem)
171 float UpdateTime_FPS;
175 float UpdateTime_Delta;
182 UPROPERTY(EditAnywhere, Category=ParticleSystem, meta=(DisplayName=
"Warmup Time - beware hitches!"))
188 UPROPERTY(EditAnywhere, Category=ParticleSystem)
189 float WarmupTickRate;
199#if WITH_EDITORONLY_DATA
209 UPROPERTY(EditAnywhere, Category=Thumbnail)
223 UPROPERTY(EditAnywhere, Category=LOD, AssetRegistrySearchable)
224 float LODDistanceCheckTime;
247#if WITH_EDITORONLY_DATA
259 FBox FixedRelativeBoundingBox;
265 UPROPERTY(EditAnywhere, Category=ParticleSystem)
266 float SecondsBeforeInactive;
268#if WITH_EDITORONLY_DATA
294 UPROPERTY(EditAnywhere, Category=Delay, AssetRegistrySearchable)
302 UPROPERTY(EditAnywhere, Category = ParticleSystem)
303 uint8 bOrientZAxisTowardCamera : 1;
306 UPROPERTY(EditAnywhere, Category = Bounds)
307 uint8 bUseFixedRelativeBoundingBox : 1;
311 uint8 bShouldResetPeakCounts : 1;
315 uint8 bHasPhysics : 1;
318 UPROPERTY(EditAnywhere, Category=Thumbnail)
319 uint8 bUseRealtimeThumbnail : 1;
323 uint8 ThumbnailImageOutOfDate : 1;
327 uint8 bIsElligibleForAsyncTick : 1;
329 uint8 bIsElligibleForAsyncTickComputed : 1;
332#if WITH_EDITORONLY_DATA
360 UPROPERTY(EditAnywhere, Category = ParticleSystem, AssetRegistrySearchable)
373 UPROPERTY(EditAnywhere, Category = Performance)
386 uint8 bAnyEmitterLoopsForever : 1;
391 UPROPERTY(EditAnywhere, Category = Performance)
398 UPROPERTY(EditAnywhere, Category = Performance)
399 float InsignificanceDelay;
428 UE_DEPRECATED(5.4,
"Implement the version that takes FAssetRegistryTagsContext instead.")
430 bool UsesCPUCollision() const;
438 bool CanBePooled()const;
451 virtual bool CalculateMaxActiveParticleCounts();
517 virtual int32 GetLODLevelCount();
565 if (!bIsElligibleForAsyncTickComputed)
567 ComputeCanTickInAnyThread();
569 return bIsElligibleForAsyncTick;
575 bool HasGPUEmitter()
const;
581 UFUNCTION(BlueprintCallable, Category =
"Particle System")
585 bool IsLooping()
const {
return bAnyEmitterLoopsForever; }
601 uint8 bShouldManageSignificance : 1;
604 uint8 bIsImmortal : 1;
606 uint8 bWillBecomeZombie : 1;
virtual bool IsPostLoadThreadSafe() const override
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#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
EParticleSystemInsignificanceReaction
Definition ParticleHelper.h:2414
EParticleSystemOcclusionBoundsMethod
Definition ParticleSystem.h:56
@ UMETA
Definition ParticleSystem.h:32
EParticleSystemUpdateMode
Definition ParticleSystem.h:30
uint32 FMaterialPSOPrecacheRequestID
Definition ParticleSystem.h:114
ParticleSystemLODMethod
Definition ParticleSystem.h:42
if(Failed) console_printf("Failed.\n")
Definition Archive.h:1208
Definition AssetRegistryTagsContext.h:98
Definition NameTypes.h:617
Definition ObjectSaveContext.h:244
Definition EnumAsByte.h:22
Definition UnrealString.h.inl:34
Definition ParticleSystem.h:118
UFXSystemAsset()
Definition ParticleSystem.h:121
const FGraphEventRef & GetPrecachePSOsEvent() const
Definition ParticleSystem.h:141
const bool HasLaunchedPSOPrecaching() const
Definition ParticleSystem.h:140
FGraphEventRef PrecachePSOsEvent
Definition ParticleSystem.h:149
const TArray< FMaterialPSOPrecacheRequestID > & GetMaterialPSOPrecacheRequestIDs() const
Definition ParticleSystem.h:142
TArray< FMaterialPSOPrecacheRequestID > MaterialPSOPrecacheRequestIDs
Definition ParticleSystem.h:150
Definition InterpCurveEdSetup.h:105
Definition MaterialInterface.h:296
virtual bool CanBeClusterRoot() const
Definition UObjectBaseUtility.h:396
virtual COREUOBJECT_API void GetAssetRegistryTags(FAssetRegistryTagsContext Context) const
Definition Obj.cpp:2423
Definition ParticleEmitter.h:98
Definition ParticleModuleColorBase.h:13
Definition ParticleSystem.h:160
bool WillBecomeZombie() const
Definition ParticleSystem.h:587
EParticleSignificanceLevel GetHighestSignificance() const
Definition ParticleSystem.h:589
bool CanTickInAnyThread()
Definition ParticleSystem.h:563
EParticleSignificanceLevel GetLowestSignificance() const
Definition ParticleSystem.h:590
bool AllowManagedTicking() const
Definition ParticleSystem.h:593
bool IsImmortal() const
Definition ParticleSystem.h:586
bool ShouldManageSignificance() const
Definition ParticleSystem.h:591
Definition ParticleSystem.h:88
Definition ParticleSystem.h:98
Definition ParticlePerfStats.h:171
Definition ParticleSystem.h:68
static FParticleSystemLOD CreateParticleSystemLOD()
Definition ParticleSystem.h:75
Definition UnrealType.h:6865
Definition ObjectPtr.h:488