PixelLightAPI  .
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
PLRenderer::SurfaceTextureBuffer Class Reference

A texture buffer renderer surface where we can render in (RTT -> Render To Texture) More...

#include <SurfaceTextureBuffer.h>

Inheritance diagram for PLRenderer::SurfaceTextureBuffer:
Inheritance graph
[legend]

List of all members.

Public Types

enum  EFlags { Depth = 1<<0, Stencil = 1<<1, Mipmaps = 1<<2, NoMultisampleAntialiasing = 1<<3 }
 Texture buffer surface flags. More...

Public Member Functions

virtual PLRENDERER_API ~SurfaceTextureBuffer ()
 Destructor.
TextureBuffer::EPixelFormat GetFormat () const
 Returns the texture buffer format.
PLCore::uint32 GetFlags () const
 Returns the texture buffer surface flags.
PLCore::uint8 GetMaxColorTargets () const
 Returns the maximum number of color render targets.
void SetMaxColorTargets (PLCore::uint8 nMaxColorTargets)
 Sets the maximum number of color render targets.
virtual PLRenderer::TextureBufferGetTextureBuffer () const =0
 Returns the renderer texture buffer this surface will render in.
virtual PLCore::uint8 GetTextureBufferFace () const =0
 Returns the current renderer texture buffer face this surface will render in.
virtual void TakeDepthBufferFromSurfaceTextureBuffer (SurfaceTextureBuffer &cSurfaceTextureBuffer)=0
 Takes over the control of the depth buffer of the given surface texture buffer.

Protected Member Functions

PLRENDERER_API SurfaceTextureBuffer (Renderer &cRenderer, PLCore::uint32 nFlags=Depth|Stencil, PLCore::uint8 nMaxColorTargets=1)
 Constructor.

Protected Attributes

PLCore::uint32 m_nFlags
PLCore::uint8 m_nMaxColorTargets

Detailed Description

A texture buffer renderer surface where we can render in (RTT -> Render To Texture)


Member Enumeration Documentation

Texture buffer surface flags.

Enumerator:
Depth 

Depth buffer

Stencil 

Stencil buffer

Mipmaps 

Mipmaps (created "on the fly" by the GPU)

NoMultisampleAntialiasing 

Do not use multisample antialiasing


Constructor & Destructor Documentation

virtual PLRENDERER_API PLRenderer::SurfaceTextureBuffer::~SurfaceTextureBuffer ( ) [virtual]

Destructor.

PLRENDERER_API PLRenderer::SurfaceTextureBuffer::SurfaceTextureBuffer ( Renderer cRenderer,
PLCore::uint32  nFlags = Depth|Stencil,
PLCore::uint8  nMaxColorTargets = 1 
) [protected]

Constructor.

Parameters:
[in]cRendererOwner renderer
[in]nFlagsTexture buffer surface flags (see EFlags)
[in]nMaxColorTargetsMaximum number of color render targets. This must be at least 1 - main renderer target color.

Member Function Documentation

Returns the texture buffer format.

Returns:
The texture buffer format
PLCore::uint32 PLRenderer::SurfaceTextureBuffer::GetFlags ( ) const [inline]

Returns the texture buffer surface flags.

Returns:
The texture buffer surface flags (see EFlags)
PLCore::uint8 PLRenderer::SurfaceTextureBuffer::GetMaxColorTargets ( ) const [inline]

Returns the maximum number of color render targets.

Returns:
The maximum number of color render targets
void PLRenderer::SurfaceTextureBuffer::SetMaxColorTargets ( PLCore::uint8  nMaxColorTargets) [inline]

Sets the maximum number of color render targets.

Parameters:
[in]nMaxColorTargetsThe maximum number of color render targets

Returns the renderer texture buffer this surface will render in.

Returns:
The renderer texture buffer this surface will render in, can be a null pointer
Note:
  • If you currently render into the texture buffer it can't be used for texturing!
virtual PLCore::uint8 PLRenderer::SurfaceTextureBuffer::GetTextureBufferFace ( ) const [pure virtual]

Returns the current renderer texture buffer face this surface will render in.

Returns:
The current renderer texture buffer face this surface will render in
Note:
  • Only valid if the target texture buffer is a cube map!
See also:

Takes over the control of the depth buffer of the given surface texture buffer.

Parameters:
[in]cSurfaceTextureBufferSurface texture buffer we take the depth buffer away

Member Data Documentation

PLCore::uint32 PLRenderer::SurfaceTextureBuffer::m_nFlags [protected]

Texture buffer surface flags (see EFlags)

Maximum number of color render targets


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


PixelLight PixelLight 0.9.11-R1
Copyright (C) 2002-2012 by The PixelLight Team
Last modified Thu Feb 23 2012 14:09:39
The content of this PixelLight document is published under the
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported