Ignition Rendering

API Reference

5.0.0

Ogre2.x implementation of the render texture class. More...

#include <Ogre2RenderTarget.hh>

Public Member Functions

virtual ~Ogre2RenderTexture ()
 Destructor. More...
 
virtual void Destroy () override
 Destroy the render target. More...
 
virtual unsigned int GLId () const override
 Returns the OpenGL texture Id. A valid Id is returned only. More...
 
virtual void PostRender () override
 Post process this object and any of its children after rendering. More...
 
virtual void PreRender () override
 Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender. More...
 
virtual Ogre::RenderTarget * RenderTarget () const override
 Get a pointer to the ogre render target containing the results of the render. More...
 
void SetOgreTexture (Ogre::Texture *_ogreTexture)
 Do not call this function directly. More...
 
- Public Member Functions inherited from BaseRenderTexture< Ogre2RenderTarget >
 BaseRenderTexture ()
 
virtual ~BaseRenderTexture ()
 
- Public Member Functions inherited from RenderTexture
virtual ~RenderTexture ()
 Destructor. More...
 
- Public Member Functions inherited from RenderTarget
virtual ~RenderTarget ()
 Destructor. More...
 
- Public Member Functions inherited from Object
virtual ~Object ()
 Destructor. More...
 
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. More...
 
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. More...
 
virtual ScenePtr Scene () const =0
 Get the Scene that created this object. More...
 
- Public Member Functions inherited from Ogre2RenderTarget
virtual ~Ogre2RenderTarget ()
 Destructor. More...
 
virtual unsigned int AntiAliasing () const
 Get the anti-aliasing level. More...
 
virtual math::Color BackgroundColor () const override
 Get the background color of the render target. This should be the same as the scene background color. More...
 
virtual MaterialPtr BackgroundMaterial () const
 Get the background material of this camera. More...
 
virtual Ogre::Camera * Camera () const
 Get a pointer to the internal ogre camera. More...
 
virtual void Copy (Image &_image) const override
 Copy the render target buffer data to an image. More...
 
unsigned int GLIdImpl () const
 
bool IsRenderWindow () const
 Returns true if this is a render window TODO(anyone): this function should be virtual. We didn't do it to preserve ABI. Look in commit history for '#Ogre2IsRenderWindowABI' to see changes made and revert. More...
 
virtual void Render ()
 Main render call. More...
 
virtual void SetAntiAliasing (unsigned int _aa)
 set the anti-aliasing level More...
 
virtual void SetBackgroundColor (math::Color _color)
 Set the background color of the render target. More...
 
virtual void SetBackgroundMaterial (MaterialPtr _material)
 Set the background material of this camera. More...
 
virtual void SetCamera (Ogre::Camera *_camera)
 Set the ogre camera to use for this render target. More...
 
void SetMaterial (MaterialPtr _material)
 Set a material to render on every object. This method is used for special cases like the render target of a depth camera. More...
 
void SetShadowsNodeDefDirty ()
 
virtual void SetVisibilityMask (uint32_t _mask)
 Set visibility mask for the viewport associated with this render target. More...
 
virtual uint32_t VisibilityMask () const
 Get visibility mask for the viewport associated with this render target. More...
 
- Public Member Functions inherited from BaseRenderTarget< Ogre2Object >
 BaseRenderTarget ()
 
virtual ~BaseRenderTarget ()
 
virtual void AddRenderPass (const RenderPassPtr &_pass) override
 Add a render pass to the render target. More...
 
virtual PixelFormat Format () const override
 Set the render target image format. More...
 
virtual unsigned int Height () const override
 Get render target height in pixels. More...
 
virtual void RemoveRenderPass (const RenderPassPtr &_pass) override
 Remove a render pass from the render target. More...
 
virtual RenderPassPtr RenderPassByIndex (unsigned int _index) const override
 Get a render pass by index. More...
 
virtual unsigned int RenderPassCount () const override
 Get the number of render passes applied to the render target. More...
 
virtual void SetFormat (PixelFormat _format) override
 Set the render target image format. More...
 
virtual void SetHeight (const unsigned int _height) override
 Set the render target height in pixels. More...
 
virtual void SetWidth (const unsigned int _width) override
 Set the render target width in pixels. More...
 
virtual unsigned int Width () const override
 Get render target width in pixels. More...
 
- Public Member Functions inherited from Ogre2Object
virtual ~Ogre2Object ()
 Destructor. More...
 
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
 

Protected Member Functions

 Ogre2RenderTexture ()
 Constructor. More...
 
virtual void BuildTarget ()
 Build the render texture. More...
 
virtual void DestroyTarget ()
 Destroy the render texture. More...
 
virtual void RebuildTarget () override
 Rebuild the render target. More...
 
- Protected Member Functions inherited from Ogre2RenderTarget
 Ogre2RenderTarget ()
 Constructor. More...
 
virtual void BuildCompositor ()
 Build the compositor. More...
 
void BuildTargetImpl ()
 Build the render texture. More...
 
virtual void DestroyCompositor ()
 Destroy the compositor. More...
 
void DestroyTargetImpl ()
 Destroy the render texture. More...
 
virtual void RebuildCompositor ()
 Rebuild the compositor. More...
 
virtual void RebuildImpl () override
 Implementation of the Rebuild function. More...
 
void RebuildMaterial ()
 Re-initializes render target material to apply a material to everything in the scene. Does nothing if no material has been set. More...
 
Ogre::RenderTarget * RenderTargetImpl () const
 Get a pointer to the ogre render target containing the results of the render (implemented separately to avoid breaking ABI of the pure virtual function) More...
 
void SyncOgreTextureVars ()
 
virtual void UpdateBackgroundColor ()
 Update the background color. More...
 
virtual void UpdateBackgroundMaterial ()
 Update the background material. More...
 
virtual void UpdateRenderPassChain ()
 Update the render pass chain. More...
 
void UpdateShadowNode ()
 Deprecated. Use Ogre2Scene:UpdateShadowNode instead. More...
 
- Protected Member Functions inherited from BaseRenderTarget< Ogre2Object >
virtual void Rebuild ()
 
- Protected Member Functions inherited from Ogre2Object
 Ogre2Object ()
 Constructor. More...
 
- Protected Member Functions inherited from BaseObject
 BaseObject ()
 
virtual void Init ()
 
virtual void Load ()
 

Protected Attributes

Ogre::Texture * ogreTexture = nullptr
 Unused. Kept for ABI reasons. More...
 
- Protected Attributes inherited from Ogre2RenderTarget
unsigned int antiAliasing = 4
 Anti-aliasing level. More...
 
MaterialPtr backgroundMaterial
 Background material of the render target. More...
 
bool backgroundMaterialDirty = false
 Flag to indicate if the render target background material has changed. More...
 
bool colorDirty = true
 Flag to indicate if the render target color has changed. More...
 
MaterialPtr material
 a material used by for the render target More...
 
Ogre2RenderTargetMaterialPtr materialApplicator
 Unused. Kept for ABI reasons. More...
 
Ogre::ColourValue ogreBackgroundColor
 Stores the background color of the render target. More...
 
Ogre::Camera * ogreCamera = nullptr
 Pointer to the internal ogre camera. More...
 
Ogre::CompositorWorkspace * ogreCompositorWorkspace = nullptr
 Ogre's compositor workspace - the main interface to render into a render target or render texture. More...
 
std::string ogreCompositorWorkspaceDefName
 Ogre's compositor workspace definition name. More...
 
uint32_t visibilityMask = IGN_VISIBILITY_ALL
 visibility mask associated with this render target More...
 
- Protected Attributes inherited from BaseRenderTarget< Ogre2Object >
PixelFormat format
 
unsigned int height
 
bool renderPassDirty
 Flag to indicate if render pass need to be rebuilt. More...
 
std::vector< RenderPassPtrrenderPasses
 A chain of render passes applied to the render target. More...
 
bool targetDirty
 
unsigned int width
 
- Protected Attributes inherited from Ogre2Object
Ogre2ScenePtr scene
 Pointer to the ogre scene. More...
 
- Protected Attributes inherited from BaseObject
unsigned int id
 
std::string name
 

Additional Inherited Members

- Static Public Member Functions inherited from Ogre2RenderTarget
static void UpdateRenderPassChain (Ogre::CompositorWorkspace *_workspace, const std::string &_workspaceDefName, const std::string &_baseNode, const std::string &_finalNode, const std::vector< RenderPassPtr > &_renderPasses, bool _recreateNodes)
 Deprecated. Use other overloads. More...
 
static void UpdateRenderPassChain (Ogre::CompositorWorkspace *_workspace, const std::string &_workspaceDefName, const std::string &_baseNode, const std::string &_finalNode, const std::vector< RenderPassPtr > &_renderPasses, bool _recreateNodes, Ogre::Texture *(*_ogreTextures)[2], bool _isRenderWindow)
 Update the render pass chain. More...
 

Detailed Description

Ogre2.x implementation of the render texture class.

Constructor & Destructor Documentation

◆ Ogre2RenderTexture()

Ogre2RenderTexture ( )
protected

Constructor.

◆ ~Ogre2RenderTexture()

virtual ~Ogre2RenderTexture ( )
virtual

Destructor.

Member Function Documentation

◆ BuildTarget()

virtual void BuildTarget ( )
protectedvirtual

Build the render texture.

◆ Destroy()

virtual void Destroy ( )
overridevirtual

Destroy the render target.

Implements Ogre2RenderTarget.

◆ DestroyTarget()

virtual void DestroyTarget ( )
protectedvirtual

Destroy the render texture.

◆ GLId()

virtual unsigned int GLId ( ) const
overridevirtual

Returns the OpenGL texture Id. A valid Id is returned only.

Reimplemented from BaseRenderTexture< Ogre2RenderTarget >.

◆ PostRender()

virtual void PostRender ( )
overridevirtual

Post process this object and any of its children after rendering.

Reimplemented from Ogre2RenderTarget.

◆ PreRender()

virtual void PreRender ( )
overridevirtual

Prepare this object and any of its children for rendering. This should be called for each object in a scene just before rendering, which can be achieved by a single call to Scene::PreRender.

Reimplemented from Ogre2RenderTarget.

◆ RebuildTarget()

virtual void RebuildTarget ( )
overrideprotectedvirtual

Rebuild the render target.

Implements Ogre2RenderTarget.

◆ RenderTarget()

virtual Ogre::RenderTarget* RenderTarget ( ) const
overridevirtual

Get a pointer to the ogre render target containing the results of the render.

Implements Ogre2RenderTarget.

◆ SetOgreTexture()

void SetOgreTexture ( Ogre::Texture *  _ogreTexture)

Do not call this function directly.

It's used to keep ABI compatibility to sync ogreTexture with the internal pointer from our base class.

Parameters
[in]_ogreTexturetexture from Ogre2RenderTargetPrivate::ogreTexture[1]

Member Data Documentation

◆ ogreTexture

Ogre::Texture* ogreTexture = nullptr
protected

Unused. Kept for ABI reasons.

Just in case we set this value to Ogre2RenderTargetPrivate::ogreTexture[1] which is what most client applications may want.


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