UCohCompositor
Inherits from UActorComponent, ICompositorInterfaceUnreal
Public Functions
Section titled “Public Functions”| Name | |
|---|---|
| UCohCompositor() | |
| virtual void | InitializeComponent() override |
| virtual void | OnComponentDestroyed(bool bDestroyingHierarchy) override |
| virtual void | SetViewSize(int32_t Width, int32_t Height) override Helper method for Compositors that care about size. |
| virtual void | OnDrawSubLayer(const renoir::ISubLayerCompositor::DrawData & DrawData) override Called on a Worker Thread (task created by the View Layout) Since we cannot create/update textures there, we just save them for processing on the Game Thread. |
| virtual void | OnCompositionAdded(unsigned ViewId, const char * CompositionId, void * Metadata) override Called on the Game Thread whenever a new composition is found in HTML Should initialize the relevant materials that the texture will be drawn into. |
| virtual void | OnCompositionVisibility(unsigned , const char * , void * , bool ) override Called on the Game Thread whenever the visibility of the composition has changed. |
| virtual void | OnCompositionRemoved(unsigned ViewId, const char * CompositionId, void * Metadata) override Called on the Game Thread whenever a new composition is removed from HTML Should destroy the relevant materials that the texture will be drawn into. |
| virtual void | ProcessDrawData(const FRenoirDrawData & DrawData, uint32 ViewFrameId) override Called on the Game Thread, used to create/update textures based on the draw data received for them Should be overridden by child classes depending on where/how they want to draw the textures. |
| virtual bool | HasCompositions() override Helper method to save on computation when there are no compositions. |
| virtual bool | IsValidObject() override Helper method to catch some invalid creation/destruction edge cases. |
Additional inherited members
Section titled “Additional inherited members”Public Functions inherited from ICompositorInterfaceUnreal
| Name | |
|---|---|
| virtual void | PrepareForAdvance(uint32 ViewFrameId) Called on the Game Thread after a View gets advanced. |
| virtual void | ProcessFrame_RT(uint32_t ViewFrameId) Called on the Render Thread at the end of the frame after a View paint. |
| virtual void | OnCompositionTransform(unsigned , const char * , void * , const renoir::float4x4 & ) Called on the Game Thread whenever the transform of the composition has changed. |
| void | AdvanceCompositor(uint32 ViewFrameId) Must be called after ensuring that View Layout tasks are completed. |
| virtual void | PrepareAllMeshMaterial(uint32_t ViewFrameId) |
| virtual void | ProcessRenderData(const FRenderData & RenderData) |
| virtual void | CreateCompositions(uint32 ViewFrameId) Executed during AdvanceCompositor after we have waited for cohtml::View::Advance and Layout. |
| virtual bool | ShouldSkipFrame() Helper method to combine multiple conditions to determine if the current Compositor frame should be skipped. |
| virtual FCriticalSection & | GetCriticalSectionFrames() |
| virtual const TMap< FString, FRenoirDrawData > & | GetRenoirDrawDataMap() const |
Protected Functions inherited from ICompositorInterfaceUnreal
| Name | |
|---|---|
| void | UpdateRenderData(const FRenoirDrawData & DrawData, UTextureRenderTarget2D * Texture, IRenderingBackend * InterfaceBackend, uint32 ViewFrameId) |
Protected Attributes inherited from ICompositorInterfaceUnreal
| Name | |
|---|---|
| FCriticalSection | CriticalSectionFrames |
| uint32 | CurrentCompositorFrameId |
| TSet< uint32 > | Frames |
| TMap< uint32, TArray< FRenderData > > | RenderDataInfosMap |
| TMap< FString, FRenoirDrawData > | RenoirDrawDataMap |
| bool | bNewCompositionsReceived |
Public Functions Documentation
Section titled “Public Functions Documentation”function UCohCompositor
Section titled “function UCohCompositor”UCohCompositor()function InitializeComponent
Section titled “function InitializeComponent”virtual void InitializeComponent() overridefunction OnComponentDestroyed
Section titled “function OnComponentDestroyed”virtual void OnComponentDestroyed( bool bDestroyingHierarchy) overridefunction SetViewSize
Section titled “function SetViewSize”virtual void SetViewSize( int32_t Width, int32_t Height) overrideHelper method for Compositors that care about size.
Reimplements: ICompositorInterfaceUnreal::SetViewSize
function OnDrawSubLayer
Section titled “function OnDrawSubLayer”virtual void OnDrawSubLayer( const renoir::ISubLayerCompositor::DrawData & DrawData) overrideCalled on a Worker Thread (task created by the View Layout) Since we cannot create/update textures there, we just save them for processing on the Game Thread.
Reimplements: ICompositorInterfaceUnreal::OnDrawSubLayer
function OnCompositionAdded
Section titled “function OnCompositionAdded”virtual void OnCompositionAdded( unsigned ViewId, const char * CompositionId, void * Metadata) overrideCalled on the Game Thread whenever a new composition is found in HTML Should initialize the relevant materials that the texture will be drawn into.
Reimplements: ICompositorInterfaceUnreal::OnCompositionAdded
function OnCompositionVisibility
Section titled “function OnCompositionVisibility”virtual void OnCompositionVisibility( unsigned , const char * , void * , bool) overrideCalled on the Game Thread whenever the visibility of the composition has changed.
Reimplements: ICompositorInterfaceUnreal::OnCompositionVisibility
function OnCompositionRemoved
Section titled “function OnCompositionRemoved”virtual void OnCompositionRemoved( unsigned ViewId, const char * CompositionId, void * Metadata) overrideCalled on the Game Thread whenever a new composition is removed from HTML Should destroy the relevant materials that the texture will be drawn into.
Reimplements: ICompositorInterfaceUnreal::OnCompositionRemoved
function ProcessDrawData
Section titled “function ProcessDrawData”virtual void ProcessDrawData( const FRenoirDrawData & DrawData, uint32 ViewFrameId) overrideCalled on the Game Thread, used to create/update textures based on the draw data received for them Should be overridden by child classes depending on where/how they want to draw the textures.
Reimplements: ICompositorInterfaceUnreal::ProcessDrawData
function HasCompositions
Section titled “function HasCompositions”inline virtual bool HasCompositions() overrideHelper method to save on computation when there are no compositions.
Reimplements: ICompositorInterfaceUnreal::HasCompositions
function IsValidObject
Section titled “function IsValidObject”inline virtual bool IsValidObject() overrideHelper method to catch some invalid creation/destruction edge cases.
Reimplements: ICompositorInterfaceUnreal::IsValidObject
© 2026 Coherent Labs. All rights reserved.