UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SceneExtensions.h File Reference
#include "CoreMinimal.h"
#include "RendererInterface.h"
#include "Tasks/Task.h"

Go to the source code of this file.

Classes

class  ISceneExtension
 
class  ISceneExtensionUpdater
 
class  ISceneExtensionRenderer
 
class  ISceneExtensionFactory
 
class  FSceneExtensionRegistry
 
class  FSceneExtensions
 
class  FSceneExtensionsUpdaters
 
class  FSceneExtensionsRenderers
 
class  TSceneExtensionRegistration< TDerivedExtension >
 

Macros

#define DECLARE_SCENE_EXTENSION(ModuleExport, ClassName)
 
#define DECLARE_SCENE_EXTENSION_UPDATER(ClassName, SceneExtensionClassName)
 
#define DECLARE_SCENE_EXTENSION_RENDERER(ClassName, SceneExtensionClassName)
 
#define IMPLEMENT_SCENE_EXTENSION(ClassName)    TSceneExtensionRegistration<ClassName> ClassName::ExtensionRegistration
 

Macro Definition Documentation

◆ DECLARE_SCENE_EXTENSION

#define DECLARE_SCENE_EXTENSION (   ModuleExport,
  ClassName 
)
Value:
public: \
ModuleExport static int32 GetExtensionID() { return ExtensionRegistration.GetExtensionID(); } \
private: \
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition SceneExtensions.h:364

Use these macros in the class definitions of your extension.

◆ DECLARE_SCENE_EXTENSION_RENDERER

#define DECLARE_SCENE_EXTENSION_RENDERER (   ClassName,
  SceneExtensionClassName 
)
Value:

◆ DECLARE_SCENE_EXTENSION_UPDATER

#define DECLARE_SCENE_EXTENSION_UPDATER (   ClassName,
  SceneExtensionClassName 
)
Value:

◆ IMPLEMENT_SCENE_EXTENSION

#define IMPLEMENT_SCENE_EXTENSION (   ClassName)     TSceneExtensionRegistration<ClassName> ClassName::ExtensionRegistration

Use this macro in the implementation source file of your extension.