|
static void * | advancePointerToMip (void *basePtr, uint32 width, uint32 height, uint32 depth, uint32 numSlices, uint8 mipLevel, PixelFormatGpu format) |
| Takes an image allocated for GPU usage (i.e. More...
|
|
static void | bulkPixelConversion (const TextureBox &src, PixelFormatGpu srcFormat, TextureBox &dst, PixelFormatGpu dstFormat, bool verticalFlip=false) |
|
static size_t | calculateSizeBytes (uint32 width, uint32 height, uint32 depth, uint32 slices, PixelFormatGpu format, uint8 numMipmaps, uint32 rowAlignment=1u) |
|
static void | convertForNormalMapping (TextureBox src, PixelFormatGpu srcFormat, TextureBox dst, PixelFormatGpu dstFormat) |
|
static float | fromSRGB (float x) |
|
static size_t | getBytesPerPixel (PixelFormatGpu format) |
|
static uint32 | getCompressedBlockHeight (PixelFormatGpu format, bool apiStrict=true) |
| See getCompressedBlockWidth. More...
|
|
static size_t | getCompressedBlockSize (PixelFormatGpu format) |
| Returns in bytes, the size of the compressed block. More...
|
|
static uint32 | getCompressedBlockWidth (PixelFormatGpu format, bool apiStrict=true) |
| Returns the minimum width for block compressed schemes. More...
|
|
static PixelFormatGpu | getEquivalentLinear (PixelFormatGpu sRgbFormat) |
|
static PixelFormatGpu | getEquivalentSRGB (PixelFormatGpu format) |
|
static PixelFormatGpu | getFamily (PixelFormatGpu format) |
|
static uint32 | getFlags (PixelFormatGpu format) |
| See PixelFormatFlags. More...
|
|
static PixelFormatGpu | getFormatFromName (const char *name, uint32 exclusionFlags=0) |
| Makes a O(N) search to return the PixelFormatGpu based on its string version. More...
|
|
static PixelFormatGpu | getFormatFromName (const String &name, uint32 exclusionFlags=0) |
|
static uint8 | getMaxMipmapCount (uint32 maxResolution) |
| Returns the maximum number of mipmaps given the resolution e.g. More...
|
|
static uint8 | getMaxMipmapCount (uint32 width, uint32 height) |
|
static uint8 | getMaxMipmapCount (uint32 width, uint32 height, uint32 depth) |
|
static size_t | getNumberOfComponents (PixelFormatGpu format) |
|
static PixelFormatLayout | getPixelLayout (PixelFormatGpu format) |
|
static size_t | getSizeBytes (uint32 width, uint32 height, uint32 depth, uint32 slices, PixelFormatGpu format, uint32 rowAlignment=1u) |
|
static bool | hasAlpha (PixelFormatGpu format) |
|
static bool | hasSRGBEquivalent (PixelFormatGpu format) |
|
static bool | isAccessible (PixelFormatGpu format) |
|
static bool | isCompressed (PixelFormatGpu format) |
|
static bool | isDepth (PixelFormatGpu format) |
|
static bool | isFloat (PixelFormatGpu format) |
|
static bool | isFloatRare (PixelFormatGpu format) |
|
static bool | isHalf (PixelFormatGpu format) |
|
static bool | isInteger (PixelFormatGpu format) |
|
static bool | isNormalized (PixelFormatGpu format) |
|
static bool | isPallete (PixelFormatGpu format) |
|
static bool | isSigned (PixelFormatGpu format) |
|
static bool | isSRgb (PixelFormatGpu format) |
|
static bool | isStencil (PixelFormatGpu format) |
|
static void | packColour (const ColourValue &rgbaPtr, PixelFormatGpu pf, void *dstPtr) |
|
static void | packColour (const float *rgbaPtr, PixelFormatGpu pf, void *dstPtr) |
|
static bool | supportsHwMipmaps (PixelFormatGpu format) |
| For SW mipmaps, see Image2::supportsSwMipmaps. More...
|
|
static float | toSRGB (float x) |
|
static const char * | toString (PixelFormatGpu format) |
|
static void | unpackColour (ColourValue *rgbaPtr, PixelFormatGpu pf, const void *srcPtr) |
|
static void | unpackColour (float *rgbaPtr, PixelFormatGpu pf, const void *srcPtr) |
|
The pixel format used for images, textures, and render surfaces.
static uint32 Ogre::PixelFormatGpuUtils::getCompressedBlockWidth |
( |
PixelFormatGpu |
format, |
|
|
bool |
apiStrict = true |
|
) |
| |
|
static |
Returns the minimum width for block compressed schemes.
ie. DXT1 compresses in blocks of 4x4 pixels. A texture with a width of 2 is just padded to 4. When building UV atlases composed of already compressed data being stitched together, the block size is very important to know as the resolution of the individual textures must be a multiple of this size.
- The function can return a value of 0 (as happens with PVRTC & ETC1 compression); this is because although they may compress in blocks (i.e. PVRTC uses a 4x4 or 8x4 block), this information is useless as the compression scheme doesn't have isolated blocks (modifying a single pixel can change the binary data of the entire stream) making it useless for subimage sampling or creating UV atlas.
- Parameters
-
format | The format to query for. Can be compressed or not. |
apiStrict | When true, obeys the rules of most APIs (i.e. ETC1 can't update subregions according to GLES specs). When false, becomes more practical if manipulating by hand (i.e. ETC1's subregions can be updated just fine by @bulkCompressedSubregion) |
- Returns
- The width of compression block, in pixels. Can be 0 (see remarks). If format is not compressed, returns 1.
Referenced by Ogre::TextureBox::at(), and Ogre::TextureBox::isSubtextureRegion().