Uranium
Application Framework
Loading...
Searching...
No Matches
UM.View.Renderer.Renderer Class Reference
Inheritance diagram for UM.View.Renderer.Renderer:
UM.Qt.QtRenderer.QtRenderer

Public Member Functions

None __init__ (self)
None beginRendering (self)
None queueNode (self, SceneNode node, **kwargs)
None render (self)
None endRendering (self)
None addRenderPass (self, RenderPass render_pass)
None removeRenderPass (self, RenderPass render_pass)
Optional[RenderPassgetRenderPass (self, str name)
SortedListWithKey getRenderPasses (self)

Protected Attributes

 _render_passes = SortedListWithKey(key = lambda k: k.getPriority())
dict _render_passes_by_key = {}

Detailed Description

Abstract base class for different rendering implementations.

The renderer is used to perform rendering of objects. It abstracts away any
details about the underlying graphics API that is used to render. It is designed
to perform different stages of rendering, with the application indicating which
objects should be rendered but the actual rendering process happening after a
sorting step.

Member Function Documentation

◆ addRenderPass()

None UM.View.Renderer.Renderer.addRenderPass ( self,
RenderPass render_pass )
Add a render pass that should be rendered.

:param render_pass: The render pass to add.

Reimplemented in UM.Qt.QtRenderer.QtRenderer.

◆ beginRendering()

None UM.View.Renderer.Renderer.beginRendering ( self)
Signal the beginning of the rendering process.

This should set up any required state before any actual rendering happens.

Reimplemented in UM.Qt.QtRenderer.QtRenderer.

◆ endRendering()

None UM.View.Renderer.Renderer.endRendering ( self)
Finish rendering, finalize and clear state.

Reimplemented in UM.Qt.QtRenderer.QtRenderer.

◆ getRenderPass()

Optional[RenderPass] UM.View.Renderer.Renderer.getRenderPass ( self,
str name )
Get a render pass by name.

:param name: The name of the render pass to get.

:return: The named render pass or None if not found.

◆ getRenderPasses()

SortedListWithKey UM.View.Renderer.Renderer.getRenderPasses ( self)
Get the list of all render passes that should be rendered.

◆ queueNode()

None UM.View.Renderer.Renderer.queueNode ( self,
SceneNode node,
** kwargs )
Queue a node to be rendered.

:param node: The node to queue for rendering.
:param kwargs: Keyword arguments.
Most of these are passed to the RenderBatch constructor directly. See RenderBatch for all available options.
In addition, the parameter "shader" is available, which determines the shader to render with. When not specified,
it defaults to a simple vertex color shader.

Reimplemented in UM.Qt.QtRenderer.QtRenderer.

◆ removeRenderPass()

None UM.View.Renderer.Renderer.removeRenderPass ( self,
RenderPass render_pass )
Remove a render pass from the list of render passes to render.

:param render_pass: The render pass to remove.

◆ render()

None UM.View.Renderer.Renderer.render ( self)
Render everything that was set up to be rendered.

Reimplemented in UM.Qt.QtRenderer.QtRenderer.


The documentation for this class was generated from the following file:
  • UM/View/Renderer.py