UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
WorldPSCPool.h File Reference
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "WorldPSCPool.generated.h"

Go to the source code of this file.

Classes

struct  FPSCPoolElem
 
struct  FPSCPool
 
struct  FWorldPSCPool
 

Macros

#define ENABLE_PSC_POOL_DEBUGGING   (!UE_BUILD_SHIPPING)
 

Enumerations

enum class  EPSCPoolMethod : uint8 {
  None , AutoRelease , ManualRelease , UMETA =(Hidden) ,
  UMETA =(Hidden)
}
 

Macro Definition Documentation

◆ ENABLE_PSC_POOL_DEBUGGING

#define ENABLE_PSC_POOL_DEBUGGING   (!UE_BUILD_SHIPPING)

Enumeration Type Documentation

◆ EPSCPoolMethod

enum class EPSCPoolMethod : uint8
strong
Enumerator
None 

PSC is will be created fresh and not allocated from the pool.

AutoRelease 

PSC is allocated from the pool and will be automatically released back to it. User need not handle this any more that other PSCs but interaction with the PSC after the tick it's spawned in are unsafe. This method is useful for one-shot fx that you don't need to keep a reference to and can fire and forget.

ManualRelease 

PSC is allocated from the pool but will NOT be automatically released back to it. User has ownership of the PSC and must call ReleaseToPool when finished with it otherwise the PSC will leak. Interaction with the PSC after it has been released are unsafe. This method is useful for persistent FX that you need to modify parameters upon etc over it's lifetime.

UMETA 

Special entry allowing manual release PSCs to be manually released but wait until completion to be returned to the pool.

UMETA 

Special entry that marks a PSC as having been returned to the pool. All PSCs currently in the pool are marked this way.