OGRE-Next  3.0.0
Object-Oriented Graphics Rendering Engine
Ogre::GLES2PixelUtil Class Reference

Class to do pixel format mapping between GL and OGRE. More...

#include <OgreGLES2PixelFormat.h>

Static Public Member Functions

static GLenum getClosestGLImageInternalFormat (PixelFormat format)
 Takes the OGRE pixel format and returns the type that must be provided to GL as internal format for image load/store. More...
 
static GLenum getClosestGLInternalFormat (PixelFormat mFormat, bool hwGamma)
 Takes the OGRE pixel format and returns the type that must be provided to GL as internal format. More...
 
static PixelFormat getClosestOGREFormat (GLenum fmt, GLenum dataType)
 Function to get the closest matching OGRE format to an internal GL format. More...
 
static GLenum getGLImageInternalFormat (PixelFormat format)
 Takes the OGRE pixel format and returns the type that must be provided to GL as internal format for image load/store. More...
 
static GLenum getGLInternalFormat (PixelFormat mFormat, bool hwGamma)
 Takes the OGRE pixel format and returns the type that must be provided to GL as internal format. More...
 
static GLenum getGLOriginDataType (PixelFormat mFormat)
 Takes the OGRE pixel format and returns type that must be provided to GL as data type for reading it into the GPU. More...
 
static GLenum getGLOriginFormat (PixelFormat mFormat, bool hwGamma)
 Takes the OGRE pixel format and returns the appropriate GL one. More...
 
static size_t getMaxMipmaps (uint32 width, uint32 height, uint32 depth, PixelFormat format)
 Returns the maximum number of Mipmaps that can be generated until we reach the minimum format possible. More...
 
static uint32 optionalPO2 (uint32 value)
 Returns next power-of-two size if required by render system, in case RSC_NON_POWER_OF_2_TEXTURES is supported it returns value as-is. More...
 

Detailed Description

Class to do pixel format mapping between GL and OGRE.

Member Function Documentation

◆ getClosestGLImageInternalFormat()

static GLenum Ogre::GLES2PixelUtil::getClosestGLImageInternalFormat ( PixelFormat  format)
static

Takes the OGRE pixel format and returns the type that must be provided to GL as internal format for image load/store.

If no match exists, returns the closest match.

Parameters
mFormatThe pixel format

◆ getClosestGLInternalFormat()

static GLenum Ogre::GLES2PixelUtil::getClosestGLInternalFormat ( PixelFormat  mFormat,
bool  hwGamma 
)
static

Takes the OGRE pixel format and returns the type that must be provided to GL as internal format.

If no match exists, returns the closest match.

Parameters
mFormatThe pixel format
hwGammaWhether a hardware gamma-corrected version is requested

◆ getClosestOGREFormat()

static PixelFormat Ogre::GLES2PixelUtil::getClosestOGREFormat ( GLenum  fmt,
GLenum  dataType 
)
static

Function to get the closest matching OGRE format to an internal GL format.

To be precise, the format will be chosen that is most efficient to transfer to the card without losing precision.

Remarks
It is valid for this function to always return PF_A8R8G8B8.

◆ getGLImageInternalFormat()

static GLenum Ogre::GLES2PixelUtil::getGLImageInternalFormat ( PixelFormat  format)
static

Takes the OGRE pixel format and returns the type that must be provided to GL as internal format for image load/store.

GL_NONE if no match exists.

Parameters
mFormatThe pixel format

◆ getGLInternalFormat()

static GLenum Ogre::GLES2PixelUtil::getGLInternalFormat ( PixelFormat  mFormat,
bool  hwGamma 
)
static

Takes the OGRE pixel format and returns the type that must be provided to GL as internal format.

GL_NONE if no match exists.

Parameters
mFormatThe pixel format
hwGammaWhether a hardware gamma-corrected version is requested

◆ getGLOriginDataType()

static GLenum Ogre::GLES2PixelUtil::getGLOriginDataType ( PixelFormat  mFormat)
static

Takes the OGRE pixel format and returns type that must be provided to GL as data type for reading it into the GPU.

Returns
a GLenum describing the data type, or 0 if there is no exactly matching one (and conversion is needed)

◆ getGLOriginFormat()

static GLenum Ogre::GLES2PixelUtil::getGLOriginFormat ( PixelFormat  mFormat,
bool  hwGamma 
)
static

Takes the OGRE pixel format and returns the appropriate GL one.

Returns
a GLenum describing the format, or 0 if there is no exactly matching one (and conversion is needed)

◆ getMaxMipmaps()

static size_t Ogre::GLES2PixelUtil::getMaxMipmaps ( uint32  width,
uint32  height,
uint32  depth,
PixelFormat  format 
)
static

Returns the maximum number of Mipmaps that can be generated until we reach the minimum format possible.

This does not count the base level.

Parameters
widthThe width of the area
heightThe height of the area
depthThe depth of the area
formatThe format of the area
Remarks
In case that the format is non-compressed, this simply returns how many times we can divide this texture in 2 until we reach 1x1. For compressed formats, constraints apply on minimum size and alignment so this might differ.

◆ optionalPO2()

static uint32 Ogre::GLES2PixelUtil::optionalPO2 ( uint32  value)
static

Returns next power-of-two size if required by render system, in case RSC_NON_POWER_OF_2_TEXTURES is supported it returns value as-is.


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