![]()  | 
  
    OGRE 14.4
    
   Object-Oriented Graphics Rendering Engine 
   | 
 
This class represents a render target that renders to multiple RenderTextures at once. More...
#include <OgreRenderTexture.h>
 Inheritance diagram for Ogre::MultiRenderTarget:Public Types | |
| typedef std::vector< RenderTexture * > | BoundSufaceList | 
  Public Types inherited from Ogre::RenderTarget | |
| enum | FrameBuffer { FB_FRONT , FB_BACK , FB_AUTO } | 
Public Member Functions | |
| MultiRenderTarget (const String &name) | |
| void | bindSurface (size_t attachment, RenderTexture *target) | 
| Bind a surface to a certain attachment point.   | |
| void | copyContentsToMemory (const Box &src, const PixelBox &dst, FrameBuffer buffer=FB_AUTO) override | 
| Error throwing implementation, it's not possible to write a MultiRenderTarget to disk.   | |
| virtual void | copyContentsToMemory (const Box &src, const PixelBox &dst, FrameBuffer buffer=FB_AUTO)=0 | 
| Copies the current contents of the render target to a pixelbox.   | |
| void | copyContentsToMemory (const PixelBox &dst, FrameBuffer buffer=FB_AUTO) | 
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.   | |
| RenderTexture * | getBoundSurface (size_t index) | 
| Get a pointer to a bound surface.   | |
| const BoundSufaceList & | getBoundSurfaceList () const | 
| Get a list of the surfaces which have been bound.   | |
| PixelFormat | suggestPixelFormat () const override | 
| Irrelevant implementation since cannot copy.   | |
| virtual void | unbindSurface (size_t attachment) | 
| Unbind attachment.   | |
  Public Member Functions inherited from Ogre::RenderTarget | |
| RenderTarget () | |
| virtual | ~RenderTarget () | 
| virtual void | _beginUpdate () | 
| Method for manual management of rendering : fires 'preRenderTargetUpdate' and initialises statistics etc.   | |
| virtual void | _detachDepthBuffer () | 
| Detaches DepthBuffer without notifying it from the detach.   | |
| virtual void | _endUpdate () | 
| Method for manual management of rendering - finishes statistics calculation and fires 'postRenderTargetUpdate'.   | |
| void | _notifyCameraRemoved (const Camera *cam) | 
| Utility method to notify a render target that a camera has been removed, in case it was referring to it as a viewer.   | |
| void | _updateAutoUpdatedViewports (bool updateStatistics=true) | 
| Method for manual management of rendering - renders only viewports that are auto updated.   | |
| void | _updateViewport (int zorder, bool updateStatistics=true) | 
| Method for manual management of rendering - renders the given viewport (even if it is not autoupdated)   | |
| virtual void | _updateViewport (Viewport *viewport, bool updateStatistics=true) | 
| Method for manual management of rendering - renders the given viewport (even if it is not autoupdated)   | |
| void | addListener (RenderTargetListener *listener) | 
| Add a listener to this RenderTarget which will be called back before & after rendering.   | |
| Viewport * | addViewport (Camera *cam, int ZOrder, float left, float top=0.0f, float width=1.0f, float height=1.0f) | 
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.   | |
| Viewport * | addViewport (Camera *cam, int ZOrder=0, FloatRect rect={0.0f, 0.0f, 1.0f, 1.0f}) | 
| Adds a viewport to the rendering target.   | |
| virtual bool | attachDepthBuffer (DepthBuffer *depthBuffer) | 
| void | copyContentsToMemory (const PixelBox &dst, FrameBuffer buffer=FB_AUTO) | 
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.   | |
| void | detachDepthBuffer () | 
| uint | getCustomAttribute (const String &name) | 
| simplified API for bindings   | |
| virtual void | getCustomAttribute (const String &name, void *pData) | 
| Retrieve a platform or API-specific piece of information.   | |
| DepthBuffer * | getDepthBuffer () const | 
| uint16 | getDepthBufferPool () const | 
| uint | getFSAA () const | 
| Indicates whether multisampling is performed on rendering and at what level.   | |
| const String & | getFSAAHint () const | 
| RenderSystem specific FSAA option. See RenderSystem::_createRenderWindow for details.   | |
| uint32 | getHeight (void) const | 
| void | getMetrics (unsigned int &width, unsigned int &height) | 
| Retrieve information about the render target.   | |
| const String & | getName (void) const | 
| Retrieve target's name.   | |
| unsigned short | getNumViewports (void) const | 
| Returns the number of viewports attached to this target.   | |
| uchar | getPriority () const | 
| Gets the priority of a render target.   | |
| const FrameStats & | getStatistics (void) const | 
| Retrieves details of current rendering performance.   | |
| Viewport * | getViewport (unsigned short index) | 
| Retrieves a pointer to the viewport with the given index.   | |
| Viewport * | getViewportByZOrder (int ZOrder) | 
| Retrieves a pointer to the viewport with the given Z-order.   | |
| uint32 | getWidth (void) const | 
| bool | hasViewportWithZOrder (int ZOrder) | 
| Returns true if and only if a viewport exists at the given Z-order.   | |
| void | insertListener (RenderTargetListener *listener, const unsigned int pos=0) | 
| same as addListener, but force the position in the vector, so we can control the call order   | |
| virtual bool | isActive () const | 
| Used to retrieve or set the active state of the render target.   | |
| bool | isAutoUpdated (void) const | 
| Gets whether this target is automatically updated if Ogre's rendering loop or Root::_updateAllRenderTargets is being used.   | |
| bool | isHardwareGammaEnabled () const | 
| Indicates whether on rendering, linear colour space is converted to sRGB gamma colour space.   | |
| virtual bool | isPrimary (void) const | 
| Indicates whether this target is the primary window.   | |
| virtual bool | isStereoEnabled (void) const | 
| Indicates whether stereo is currently enabled for this target.   | |
| void | removeAllListeners (void) | 
| Removes all listeners from this instance.   | |
| void | removeAllViewports (void) | 
| Removes all viewports on this target.   | |
| void | removeListener (RenderTargetListener *listener) | 
| Removes a RenderTargetListener previously registered using addListener.   | |
| void | removeViewport (int ZOrder) | 
| Removes a viewport at a given Z-order.   | |
| virtual bool | requiresTextureFlipping () const =0 | 
| void | resetStatistics (void) | 
| Resets saved frame-rate statistices.   | |
| void | setActive (bool state) | 
| Used to set the active state of the render target.   | |
| void | setAutoUpdated (bool autoupdate) | 
| Sets whether this target should be automatically updated if Ogre's rendering loop or Root::_updateAllRenderTargets is being used.   | |
| void | setDepthBufferPool (uint16 poolId) | 
| Sets the pool ID this RenderTarget should query from.   | |
| virtual void | setFSAA (uint fsaa, const String &fsaaHint) | 
| Set the level of multisample AA to be used if hardware support it.   | |
| void | setPriority (uchar priority) | 
| Sets the priority of this render target in relation to the others.   | |
| virtual void | swapBuffers () | 
| Swaps the frame buffers to display the next frame.   | |
| void | update (bool swapBuffers=true) | 
| Tells the target to update it's contents.   | |
| void | writeContentsToFile (const String &filename) | 
| Writes the current contents of the render target to the named file.   | |
| String | writeContentsToTimestampedFile (const String &filenamePrefix, const String &filenameSuffix) | 
| Writes the current contents of the render target to the (PREFIX)(time-stamp)(SUFFIX) file.   | |
This class represents a render target that renders to multiple RenderTextures at once.
Surfaces can be bound and unbound at will, as long as the following constraints are met:
| typedef std::vector<RenderTexture*> Ogre::MultiRenderTarget::BoundSufaceList | 
| void Ogre::MultiRenderTarget::bindSurface | ( | size_t | attachment, | 
| RenderTexture * | target | ||
| ) | 
Bind a surface to a certain attachment point.
| attachment | 0 .. mCapabilities->getNumMultiRenderTargets()-1 | 
| target | RenderTexture to bind. | 
It does not bind the surface and fails with an exception (ERR_INVALIDPARAMS) if:
Unbind attachment.
      
  | 
  overridevirtual | 
Error throwing implementation, it's not possible to write a MultiRenderTarget to disk.
Implements Ogre::RenderTarget.
      
  | 
  inlineoverridevirtual | 
Irrelevant implementation since cannot copy.
Reimplemented from Ogre::RenderTarget.
References Ogre::PF_UNKNOWN.
      
  | 
  inline | 
Get a list of the surfaces which have been bound.
      
  | 
  inline | 
Get a pointer to a bound surface.
      
  | 
  virtual | 
Copies the current contents of the render target to a pixelbox.
Implements Ogre::RenderTarget.
      
  | 
  inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.