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

Abstract renderer cube texture buffer resource. More...

#include <TextureBufferCube.h>

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

List of all members.

Public Member Functions

virtual PLRENDERER_API ~TextureBufferCube ()
 Destructor.
PLRENDERER_API PLCore::uint32 GetSize (PLCore::uint32 nMipmap=0) const
 Returns the texture buffer size.
virtual PLRENDERER_API
PLCore::uint32 
GetNumOfPixels (PLCore::uint32 nMipmap=0) const override
 Returns the number of pixels of a certain mipmap level.
virtual PLRENDERER_API
PLCore::uint32 
GetNumOfBytes (PLCore::uint32 nMipmap=0, EPixelFormat nFormat=Unknown) const override
 Returns the number of bytes required to hold certain mipmap level texture buffer data.

Protected Member Functions

PLRENDERER_API TextureBufferCube (Renderer &cRenderer, PLCore::uint32 nFlags)
 Constructor.

Protected Attributes

PLCore::uint32 m_nSize

Detailed Description

Abstract renderer cube texture buffer resource.

Remarks:
The order of the cube map faces is: x-positive (0, left), x-negative (1, right), y-positive (2, top), y-negative (3, bottom), z-positive (4, back), z-negative (5, front)
    Texture buffer faces:
            ----------
            | Top    |
            | + Y    |
    -----------------------------------
    | Left  | Front  | Right  | Back  |
    | + X   | - Z    | - X    | + Z   |
    -----------------------------------
            | Bottom |
            | - Y    |
            ----------

    Coordinate system:
                     +y (top)
                      |
                      |  -z (front)
                      |  /
                      | /
    -x (right) _______|/_______ +x (left)
                     /|
                    / |
                   /  |
           +z (back)  |
                     -y (bottom)

Constructor & Destructor Documentation

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

Destructor.

PLRENDERER_API PLRenderer::TextureBufferCube::TextureBufferCube ( Renderer cRenderer,
PLCore::uint32  nFlags 
) [protected]

Constructor.

Parameters:
[in]cRendererOwner renderer
[in]nFlagsTexture buffer flags (see EFlags)

Member Function Documentation

PLRENDERER_API PLCore::uint32 PLRenderer::TextureBufferCube::GetSize ( PLCore::uint32  nMipmap = 0) const

Returns the texture buffer size.

Parameters:
[in]nMipmapMipmap level (0 - GetNumOfMipmaps())
Returns:
Texture buffer size
virtual PLRENDERER_API PLCore::uint32 PLRenderer::TextureBufferCube::GetNumOfPixels ( PLCore::uint32  nMipmap = 0) const [override, virtual]

Returns the number of pixels of a certain mipmap level.

Parameters:
[in]nMipmapMipmap level (0 - GetNumOfMipmaps())
Returns:
The number of pixels of a certain mipmap level
Note:
  • If this is a cube texture, the number of pixels of all faces together will be returned

Implements PLRenderer::TextureBuffer.

virtual PLRENDERER_API PLCore::uint32 PLRenderer::TextureBufferCube::GetNumOfBytes ( PLCore::uint32  nMipmap = 0,
EPixelFormat  nFormat = Unknown 
) const [override, virtual]

Returns the number of bytes required to hold certain mipmap level texture buffer data.

Parameters:
[in]nMipmapMipmap level (0 - GetNumOfMipmaps())
[in]nFormatTarget texture buffer pixel format, if Unknown, the format of THIS texture buffer is chosen automatically
Returns:
The number of bytes required to hold certain mipmap level texture buffer data
Note:
  • If 'nFormat' is a compressed format, compression is also taken into account
  • If this is a cube texture, the number of bytes of all faces together will be returned

Implements PLRenderer::TextureBuffer.


Member Data Documentation

PLCore::uint32 PLRenderer::TextureBufferCube::m_nSize [protected]

Texture buffer size


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


PixelLight PixelLight 0.9.10-R1
Copyright (C) 2002-2011 by The PixelLight Team
Last modified Fri Dec 23 2011 15:51:23
The content of this PixelLight document is published under the
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported