Inherited: Object


PipelineContext is a class responsible for managing the rendering pipeline context, including rendering tasks, camera settings, and post-processing effects.

Public Methods


addTextureBuffer (Texture * texture)

CommandBuffer *

buffer () const


cameraReset ()


culledComponents ()

Camera *

currentCamera () const

RenderTarget *

defaultTarget ()


insertRenderTask (PipelineTask * task, PipelineTask * before = nullptr)

const int

renderTasks () const


renderTextures () const


resize (int32_t width, int32_t height)


sceneComponents ()


sceneLights ()


setCurrentCamera (Camera * camera)


setDefaultTarget (RenderTarget * target)


setPipeline (Pipeline * pipeline)

Texture *

textureBuffer (const std::string & name)


uiComponents ()


worldBound () const

Static Methods

Mesh *

defaultCube ()

Mesh *

defaultPlane ()

Methods Description

void PipelineContext::addTextureBuffer (Texture * texture)

Adds a texture buffer to the global *texture*s in the command buffer.

:ref:`CommandBuffer<api_CommandBuffer>`* PipelineContext::buffer () const

Retrieves the command buffer associated with the pipeline context.

void PipelineContext::cameraReset ()

Resets the camera view and projection matrices in the command buffer.

int PipelineContext::culledComponents ()

Returns the list of culled scene components based on frustum culling.

:ref:`Camera<api_Camera>`* PipelineContext::currentCamera () const

Returns the currently set camera for rendering.

See also setCurrentCamera().

:ref:`Mesh<api_Mesh>`* PipelineContext::defaultCube ()

Return the default cube mesh used in rendering.

:ref:`Mesh<api_Mesh>`* PipelineContext::defaultPlane ()

Retrieves the default plane mesh used in rendering.

:ref:`RenderTarget<api_RenderTarget>`* PipelineContext::defaultTarget ()

Returns the default render target associated with the pipeline context.

See also setDefaultTarget().

void PipelineContext::insertRenderTask (PipelineTask * task, PipelineTask * before = nullptr)

Inserts a rendering task into the pipeline context. Optionally, specifies the task to insert before.

const int PipelineContext::renderTasks () const

Returns the list of rendering tasks associated with the pipeline context.

int PipelineContext::renderTextures () const

Returns a list of names of the global textures.

void PipelineContext::resize (int32_t width, int32_t height)

Resizes the pipeline context to the specified width and height. Updates render tasks accordingly.

int PipelineContext::sceneComponents ()

Returns the list of scene components relevant for rendering.

int PipelineContext::sceneLights ()

Returns the list of scene lights relevant for rendering.

void PipelineContext::setCurrentCamera (Camera * camera)

Sets the current camera and updates associated matrices in the command buffer.

See also currentCamera().

void PipelineContext::setDefaultTarget (RenderTarget * target)

Sets the default render target for the pipeline context.

See also defaultTarget().

void PipelineContext::setPipeline (Pipeline * pipeline)

Sets the rendering pipeline for the context, creating and linking associated rendering tasks.

:ref:`Texture<api_Texture>`* PipelineContext::textureBuffer (std::string & name)

Returns a texture buffer based on its name.

int PipelineContext::uiComponents ()

Returns the list of UI components relevant for rendering.

AABBox PipelineContext::worldBound () const

Returns the bounding box representing the world-bound.