Navigation
API > API/Runtime > API/Runtime/Engine
The interface to an effects system.
| Name | FFXSystemInterface |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/FXSystem.h |
| Include Path | #include "FXSystem.h" |
Syntax
class FFXSystemInterface : public TSharedFromThis< FFXSystemInterface >
Inheritance Hierarchy
- FSharedFromThisBase → TSharedFromThis → FFXSystemInterface
Derived Classes
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FFXSystemInterface() |
By making the destructor protected, an instance must be destroyed via FFXSystemInterface::Destroy. | FXSystem.h |
Structs
| Name | Remarks |
|---|---|
| FFXInterfaceDeletor |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| CreateCustomFXDelegates | TMap< FName, FCreateCustomFXSystemDelegate > | FXSystem.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsPendingKill | bool | FXSystem.h | ||
| Scene | FScene * | FXSystem.h | ||
| SceneInterface | FSceneInterface * | FXSystem.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddVectorField
(
UVectorFieldComponent* VectorFieldComponent |
Add a vector field to the FX system. | FXSystem.h | |
virtual void DestroyGPUSimulation() |
Gamethread callback when destroy gets called, allows to clean up references. | FXSystem.h | |
void DrawDebug
(
FCanvas* Canvas |
Draw desired debug information related to the effects system. | FXSystem.h | |
void DrawDebug_RenderThread
(
FRDGBuilder& GraphBuilder, |
FXSystem.h | ||
virtual void DrawDebug_RenderThread
(
FRDGBuilder& GraphBuilder, |
Draw desired debug information related to the effects system on the render thread. | FXSystem.h | |
void DrawSceneDebug_RenderThread
(
FRDGBuilder& GraphBuilder, |
FXSystem.h | ||
virtual void DrawSceneDebug_RenderThread
(
FRDGBuilder& GraphBuilder, |
Call to handle debug drawing to the scene (i.e. where depth is available) | FXSystem.h | |
FGPUSortManager * GetGPUSortManager() |
Get the shared SortManager, used in the rendering loop to call FGPUSortManager::OnPreRender() and FGPUSortManager::OnPostRenderOpaque() | FXSystem.h | |
virtual FFXSystemInterface * GetInterface
(
const FName& InName |
Return the interface bound to the given name. | FXSystem.h | |
FScene * GetScene() |
FXSystem.h | ||
FSceneInterface * GetSceneInterface() |
FXSystem.h | ||
bool IsPendingKill() |
FXSystem.h | ||
virtual void OnMarkPendingKill () |
Gamethread callback when MarkPendingKill is called, allows to clean up references. | FXSystem.h | |
void PostInitViews
(
FRDGBuilder& GraphBuilder, |
FXSystem.h | ||
void PostInitViews
(
FRDGBuilder& GraphBuilder, |
FXSystem.h | ||
void PostRenderOpaque
(
FRDGBuilder& GraphBuilder, |
Notification from the renderer that opaque primitives have rendered. | FXSystem.h | |
void PostRenderOpaque
(
FRDGBuilder& GraphBuilder, |
FXSystem.h | ||
void PreInitViews
(
FRDGBuilder& GraphBuilder, |
Notification from the renderer that it is about to perform visibility checks on FX belonging to this system. | FXSystem.h | |
void PreRender
(
FRDGBuilder& GraphBuilder, |
Notification from the renderer that it is about to draw FX belonging to this system. | FXSystem.h | |
void PreRender
(
FRDGBuilder& GraphBuilder, |
FXSystem.h | ||
void RemoveVectorField
(
UVectorFieldComponent* VectorFieldComponent |
Remove a vector field from the FX system. | FXSystem.h | |
bool RequiresEarlyViewUniformBuffer() |
FXSystem.h | ||
bool RequiresRayTracingScene() |
FXSystem.h | ||
void Resume() |
Resume the FX system. Has no effect if the system was not suspended. | FXSystem.h | |
void SetScene
(
FScene* InScene |
FXSystem.h | ||
void SetSceneInterface
(
FSceneInterface* InSceneInterface |
FXSystem.h | ||
virtual void SetSceneTexturesUniformBuffer
(
const TUniformBufferRef< FSceneTextureUniformParameters >& InSceneTexturesUniformParams |
FXSystem.h | ||
virtual bool ShouldDebugDraw_RenderThread() |
Does the FX system require DrawDebug_RenderThread to be called at all? There is cost to enabling this so only return true when we have something to present. | FXSystem.h | |
void Suspend () |
Suspend the FX system. | FXSystem.h | |
void Tick
(
UWorld* World, |
Tick the effects system. | FXSystem.h | |
void UpdateVectorField
(
UVectorFieldComponent* VectorFieldComponent |
Update a vector field registered with the FX system. | FXSystem.h | |
bool UsesDepthBuffer() |
FXSystem.h | ||
bool UsesGlobalDistanceField() |
FXSystem.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void OnDestroy() |
FXSystem.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FFXSystemInterface * Create
(
ERHIFeatureLevel::Type InFeatureLevel, |
Create an effects system instance. | FXSystem.h | |
static void Destroy
(
FFXSystemInterface* FXSystem |
FXSystem.h | ||
static void MarkPendingKill
(
FFXSystemInterface* FXSystem |
Notify the effect system instance that it should release resources in preperation for destruction. | FXSystem.h | |
static void QueueDestroyGPUSimulation
(
FFXSystemInterface* FXSystem |
Queue Destroy the gpu simulation on the render thread | FXSystem.h | |
static void RegisterCustomFXSystem
(
const FName& InterfaceName, |
Register a custom FX system implementation. | FXSystem.h | |
static void UnregisterCustomFXSystem
(
const FName& InterfaceName |
Unregister a custom FX system implementation. | FXSystem.h |