Gazebo Rendering

API Reference

9.0.0~pre2

Ogre2 Implementation of a render pass. More...

#include <Ogre2RenderPass.hh>

Public Member Functions

virtual ~Ogre2RenderPass ()
 Destructor.
 
virtual void CreateRenderPass ()
 Create the render pass using ogre compositor.
 
void Destroy () override
 Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior.
 
std::string OgreCompositorNodeDefinitionName () const
 Get the ogre compositor node definition name for this render pass.
 
virtual void WorkspaceAdded (Ogre::CompositorWorkspace *_workspace)
 Notifies Ogre2RenderPass that a new workspace has been created.
 
virtual void WorkspaceRemoved (Ogre::CompositorWorkspace *_workspace)
 Notifies Ogre2RenderPass that a workspace will be destroyed.
 
- Public Member Functions inherited from BaseRenderPass< Ogre2Object >
virtual ~BaseRenderPass ()
 Destructor.
 
virtual bool IsEnabled () const override
 Get whether or not the render pass is enabled.
 
virtual void PreRender (const CameraPtr &_camera) override
 See Object::PreRender. This function will call Object::PreRender but with the added bonus that it has access to the camera that is about to render.
 
virtual void SetEnabled (bool _enabled) override
 Set to enable or disable the render pass.
 
void SetWideAngleCameraAfterStitching (bool _afterStitching) override
 WideAngleCamera renders to 6 faces; then stitches all 6 into a final "fish-eye" lens result.
 
bool WideAngleCameraAfterStitching () const override
 See SetWideAngleCameraAfterStitching()
 
- Public Member Functions inherited from RenderPass
virtual ~RenderPass ()
 Destructor.
 
- Public Member Functions inherited from Object
virtual ~Object ()
 Destructor.
 
virtual unsigned int Id () const =0
 Get the object ID. This ID will be unique across all objects inside a given scene, but necessarily true for objects across different scenes.
 
virtual std::string Name () const =0
 Get the object name. This name will be unique across all objects inside a given scene, but necessarily true for objects across different scenes.
 
virtual void PostRender ()=0
 Post process this object and any of its children after rendering.
 
virtual ScenePtr Scene () const =0
 Get the Scene that created this object.
 
- Public Member Functions inherited from Ogre2Object
virtual ~Ogre2Object ()
 Destructor.
 
virtual ScenePtr Scene () const override
 
- Public Member Functions inherited from BaseObject
virtual ~BaseObject ()
 
virtual unsigned int Id () const override
 
virtual std::string Name () const override
 
virtual void PostRender () override
 
virtual void PreRender () override
 

Protected Member Functions

 Ogre2RenderPass ()
 Constructor.
 
- Protected Member Functions inherited from BaseRenderPass< Ogre2Object >
 BaseRenderPass ()
 Constructor.
 
- Protected Member Functions inherited from Ogre2Object
 Ogre2Object ()
 Constructor.
 
- Protected Member Functions inherited from BaseObject
 BaseObject ()
 
virtual void Init ()
 
virtual void Load ()
 

Protected Attributes

std::string ogreCompositorNodeDefName
 Name of the ogre compositor node definition.
 
- Protected Attributes inherited from BaseRenderPass< Ogre2Object >
bool afterStitching
 Flag tracking the current value of SetWideAngleCameraAfterStitching()
 
bool enabled
 Flag to indicate if render pass is enabled or not.
 
- Protected Attributes inherited from Ogre2Object
Ogre2ScenePtr scene
 Pointer to the ogre scene.
 
- Protected Attributes inherited from BaseObject
unsigned int id
 
std::string name
 

Detailed Description

Ogre2 Implementation of a render pass.

The ogre2 compositor chain in gz-rendering is set up as follows:

  • Base scene pass -> [0..N] RenderPass'es -> Final compositor pass. This is set up by Ogre2RenderTarget which loads the compositor workspace definiton from script. The base scene pass node is responsible for rendering the initial scene and passes its output to any RenderPass'es that are added to the RenderTarget. Each RenderPass has its own ogre compositor node that receives the output from the previous RenderPass as input, applies its own pass over the input, and sends the result to the next RenderPass. Note that the Ogre2RenderPass class provides the node definition only and the actual node creation work is done in the Ogre2RenderTarget class when the whole workspace is constructed.

Constructor & Destructor Documentation

◆ Ogre2RenderPass()

Ogre2RenderPass ( )
protected

Constructor.

◆ ~Ogre2RenderPass()

virtual ~Ogre2RenderPass ( )
virtual

Destructor.

Member Function Documentation

◆ CreateRenderPass()

virtual void CreateRenderPass ( )
virtual

Create the render pass using ogre compositor.

Reimplemented in Ogre2GaussianNoisePass.

◆ Destroy()

void Destroy ( )
overridevirtual

Destroy any resources associated with this object. Invoking any other functions after destroying an object will result in undefined behavior.

Implements Object.

◆ OgreCompositorNodeDefinitionName()

std::string OgreCompositorNodeDefinitionName ( ) const

Get the ogre compositor node definition name for this render pass.

◆ WorkspaceAdded()

virtual void WorkspaceAdded ( Ogre::CompositorWorkspace *  _workspace)
virtual

Notifies Ogre2RenderPass that a new workspace has been created.

Parameters
[in]_workspaceworkspace that was created

Reimplemented in Ogre2LensFlarePass.

◆ WorkspaceRemoved()

virtual void WorkspaceRemoved ( Ogre::CompositorWorkspace *  _workspace)
virtual

Notifies Ogre2RenderPass that a workspace will be destroyed.

Parameters
[in]_workspaceworkspace about to be destroyed

Reimplemented in Ogre2LensFlarePass.

Member Data Documentation

◆ ogreCompositorNodeDefName

std::string ogreCompositorNodeDefName
protected

Name of the ogre compositor node definition.


The documentation for this class was generated from the following file: