Blender
V3.3
|
#include "BLI_utildefines.h"
#include <BlockDXT.h>
#include <DirectDrawSurface.h>
#include <PixelFormat.h>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <sys/types.h>
Go to the source code of this file.
Macros | |
#define | DDS_MAKEFOURCC(ch0, ch1, ch2, ch3) |
#define | CASE(format) |
Functions | |
static const char * | getDxgiFormatString (DXGI_FORMAT dxgiFormat) |
static const char * | getD3d10ResourceDimensionString (D3D10_RESOURCE_DIMENSION resourceDimension) |
void | mem_read (Stream &mem, DDSPixelFormat &pf) |
void | mem_read (Stream &mem, DDSCaps &caps) |
void | mem_read (Stream &mem, DDSHeader10 &header) |
void | mem_read (Stream &mem, DDSHeader &header) |
static uint | findD3D9Format (uint bitcount, uint rmask, uint gmask, uint bmask, uint amask) |
static Color32 | buildNormal (uint8 x, uint8 y) |
Variables | |
static const uint | FOURCC_NVTT = DDS_MAKEFOURCC('N', 'V', 'T', 'T') |
static const uint | FOURCC_DDS = DDS_MAKEFOURCC('D', 'D', 'S', ' ') |
static const uint | FOURCC_DXT1 = DDS_MAKEFOURCC('D', 'X', 'T', '1') |
static const uint | FOURCC_DXT2 = DDS_MAKEFOURCC('D', 'X', 'T', '2') |
static const uint | FOURCC_DXT3 = DDS_MAKEFOURCC('D', 'X', 'T', '3') |
static const uint | FOURCC_DXT4 = DDS_MAKEFOURCC('D', 'X', 'T', '4') |
static const uint | FOURCC_DXT5 = DDS_MAKEFOURCC('D', 'X', 'T', '5') |
static const uint | FOURCC_RXGB = DDS_MAKEFOURCC('R', 'X', 'G', 'B') |
static const uint | FOURCC_ATI1 = DDS_MAKEFOURCC('A', 'T', 'I', '1') |
static const uint | FOURCC_ATI2 = DDS_MAKEFOURCC('A', 'T', 'I', '2') |
static const uint | FOURCC_DX10 = DDS_MAKEFOURCC('D', 'X', '1', '0') |
static const uint | FOURCC_UVER = DDS_MAKEFOURCC('U', 'V', 'E', 'R') |
static const uint | D3DFMT_R8G8B8 = 20 |
static const uint | D3DFMT_A8R8G8B8 = 21 |
static const uint | D3DFMT_X8R8G8B8 = 22 |
static const uint | D3DFMT_R5G6B5 = 23 |
static const uint | D3DFMT_X1R5G5B5 = 24 |
static const uint | D3DFMT_A1R5G5B5 = 25 |
static const uint | D3DFMT_A4R4G4B4 = 26 |
static const uint | D3DFMT_R3G3B2 = 27 |
static const uint | D3DFMT_A8 = 28 |
static const uint | D3DFMT_A8R3G3B2 = 29 |
static const uint | D3DFMT_X4R4G4B4 = 30 |
static const uint | D3DFMT_A2B10G10R10 = 31 |
static const uint | D3DFMT_A8B8G8R8 = 32 |
static const uint | D3DFMT_X8B8G8R8 = 33 |
static const uint | D3DFMT_G16R16 = 34 |
static const uint | D3DFMT_A2R10G10B10 = 35 |
static const uint | D3DFMT_L8 = 50 |
static const uint | D3DFMT_L16 = 81 |
static const uint | DDSD_CAPS = 0x00000001U |
static const uint | DDSD_PIXELFORMAT = 0x00001000U |
static const uint | DDSD_WIDTH = 0x00000004U |
static const uint | DDSD_HEIGHT = 0x00000002U |
static const uint | DDSD_PITCH = 0x00000008U |
static const uint | DDSD_MIPMAPCOUNT = 0x00020000U |
static const uint | DDSD_LINEARSIZE = 0x00080000U |
static const uint | DDSD_DEPTH = 0x00800000U |
static const uint | DDSCAPS_COMPLEX = 0x00000008U |
static const uint | DDSCAPS_TEXTURE = 0x00001000U |
static const uint | DDSCAPS_MIPMAP = 0x00400000U |
static const uint | DDSCAPS2_VOLUME = 0x00200000U |
static const uint | DDSCAPS2_CUBEMAP = 0x00000200U |
static const uint | DDSCAPS2_CUBEMAP_POSITIVEX = 0x00000400U |
static const uint | DDSCAPS2_CUBEMAP_NEGATIVEX = 0x00000800U |
static const uint | DDSCAPS2_CUBEMAP_POSITIVEY = 0x00001000U |
static const uint | DDSCAPS2_CUBEMAP_NEGATIVEY = 0x00002000U |
static const uint | DDSCAPS2_CUBEMAP_POSITIVEZ = 0x00004000U |
static const uint | DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x00008000U |
static const uint | DDSCAPS2_CUBEMAP_ALL_FACES = 0x0000FC00U |
static const uint | DDPF_ALPHAPIXELS = 0x00000001U |
static const uint | DDPF_ALPHA = 0x00000002U |
static const uint | DDPF_FOURCC = 0x00000004U |
static const uint | DDPF_RGB = 0x00000040U |
static const uint | DDPF_PALETTEINDEXED1 = 0x00000800U |
static const uint | DDPF_PALETTEINDEXED2 = 0x00001000U |
static const uint | DDPF_PALETTEINDEXED4 = 0x00000008U |
static const uint | DDPF_PALETTEINDEXED8 = 0x00000020U |
static const uint | DDPF_LUMINANCE = 0x00020000U |
static const uint | DDPF_ALPHAPREMULT = 0x00008000U |
static const uint | DDPF_NORMAL = 0x80000000U |
static const uint | DDPF_SRGB = 0x40000000U |
#define DDS_MAKEFOURCC | ( | ch0, | |
ch1, | |||
ch2, | |||
ch3 | |||
) |
Definition at line 52 of file DirectDrawSurface.cpp.
Enumerator | |
---|---|
D3D10_RESOURCE_DIMENSION_UNKNOWN | |
D3D10_RESOURCE_DIMENSION_BUFFER | |
D3D10_RESOURCE_DIMENSION_TEXTURE1D | |
D3D10_RESOURCE_DIMENSION_TEXTURE2D | |
D3D10_RESOURCE_DIMENSION_TEXTURE3D |
Definition at line 290 of file DirectDrawSurface.cpp.
enum DXGI_FORMAT |
Definition at line 161 of file DirectDrawSurface.cpp.
Definition at line 530 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::d3d9Format().
|
static |
Definition at line 423 of file DirectDrawSurface.cpp.
References D3D10_RESOURCE_DIMENSION_BUFFER, D3D10_RESOURCE_DIMENSION_TEXTURE1D, D3D10_RESOURCE_DIMENSION_TEXTURE2D, D3D10_RESOURCE_DIMENSION_TEXTURE3D, and D3D10_RESOURCE_DIMENSION_UNKNOWN.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 298 of file DirectDrawSurface.cpp.
References CASE.
Referenced by DirectDrawSurface::printInfo().
Definition at line 454 of file DirectDrawSurface.cpp.
References DDSCaps::caps1, DDSCaps::caps2, DDSCaps::caps3, DDSCaps::caps4, and mem_read().
Definition at line 471 of file DirectDrawSurface.cpp.
References DDSHeader::caps, DDSHeader::depth, DDSHeader::flags, DDSHeader::fourcc, DDSHeader::hasDX10Header(), DDSHeader::header10, DDSHeader::height, mem_read(), DDSHeader::mipmapcount, DDSHeader::notused, DDSHeader::pf, DDSHeader::pitch, DDSHeader::reserved, DDSHeader::size, and DDSHeader::width.
void mem_read | ( | Stream & | mem, |
DDSHeader10 & | header | ||
) |
Definition at line 462 of file DirectDrawSurface.cpp.
References DDSHeader10::arraySize, DDSHeader10::dxgiFormat, mem_read(), DDSHeader10::miscFlag, DDSHeader10::reserved, and DDSHeader10::resourceDimension.
void mem_read | ( | Stream & | mem, |
DDSPixelFormat & | pf | ||
) |
Definition at line 442 of file DirectDrawSurface.cpp.
References pf.
Referenced by DirectDrawSurface::DirectDrawSurface(), mem_read(), and DirectDrawSurface::readData().
|
static |
Definition at line 82 of file DirectDrawSurface.cpp.
|
static |
Definition at line 88 of file DirectDrawSurface.cpp.
|
static |
Definition at line 92 of file DirectDrawSurface.cpp.
|
static |
Definition at line 83 of file DirectDrawSurface.cpp.
|
static |
Definition at line 85 of file DirectDrawSurface.cpp.
|
static |
Definition at line 89 of file DirectDrawSurface.cpp.
|
static |
Definition at line 86 of file DirectDrawSurface.cpp.
|
static |
Definition at line 78 of file DirectDrawSurface.cpp.
|
static |
Definition at line 91 of file DirectDrawSurface.cpp.
|
static |
Definition at line 110 of file DirectDrawSurface.cpp.
|
static |
Definition at line 105 of file DirectDrawSurface.cpp.
|
static |
Definition at line 84 of file DirectDrawSurface.cpp.
|
static |
Definition at line 80 of file DirectDrawSurface.cpp.
|
static |
Definition at line 77 of file DirectDrawSurface.cpp.
|
static |
Definition at line 81 of file DirectDrawSurface.cpp.
|
static |
Definition at line 87 of file DirectDrawSurface.cpp.
|
static |
Definition at line 90 of file DirectDrawSurface.cpp.
|
static |
Definition at line 79 of file DirectDrawSurface.cpp.
|
static |
Definition at line 146 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo(), and DDSHeader::setPixelFormat().
|
static |
Definition at line 145 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::hasAlpha(), DirectDrawSurface::printInfo(), DDSHeader::setHasAlphaFlag(), and DDSHeader::setPixelFormat().
|
static |
Definition at line 154 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 147 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::d3d9Format(), DirectDrawSurface::hasAlpha(), DirectDrawSurface::isSupported(), DirectDrawSurface::mipmap(), DirectDrawSurface::printInfo(), DDSHeader::setFormatCode(), DDSHeader::setFourCC(), and DDSHeader::setPixelFormat().
|
static |
Definition at line 153 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isSupported(), DirectDrawSurface::printInfo(), and DDSHeader::setPixelFormat().
|
static |
Definition at line 157 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::hasAlpha(), DDSHeader::isNormalMap(), DirectDrawSurface::printInfo(), and DDSHeader::setNormalFlag().
|
static |
Definition at line 149 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 150 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 151 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 152 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 148 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::hasAlpha(), DirectDrawSurface::isSupported(), DirectDrawSurface::mipmap(), DirectDrawSurface::printInfo(), and DDSHeader::setPixelFormat().
|
static |
Definition at line 158 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::isSrgb(), and DDSHeader::setSrgbFlag().
|
static |
Definition at line 135 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isTextureCube(), DirectDrawSurface::printInfo(), and DDSHeader::setTextureCube().
|
static |
Definition at line 143 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isSupported(), DirectDrawSurface::printInfo(), and DDSHeader::setTextureCube().
|
static |
Definition at line 138 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 140 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 142 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 137 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 139 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 141 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo().
|
static |
Definition at line 134 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isTexture3D(), DirectDrawSurface::printInfo(), and DDSHeader::setTexture3D().
|
static |
Definition at line 131 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo(), DDSHeader::setMipmapCount(), and DDSHeader::setTextureCube().
|
static |
Definition at line 133 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo(), and DDSHeader::setMipmapCount().
|
static |
Definition at line 132 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::DDSHeader(), DirectDrawSurface::isValid(), DirectDrawSurface::printInfo(), and DDSHeader::setMipmapCount().
|
static |
Definition at line 122 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::DDSHeader(), and DirectDrawSurface::printInfo().
|
static |
Definition at line 129 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::depth(), DirectDrawSurface::printInfo(), and DDSHeader::setDepth().
|
static |
Definition at line 125 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::height(), DirectDrawSurface::isValid(), DirectDrawSurface::printInfo(), and DDSHeader::setHeight().
|
static |
Definition at line 128 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo(), DDSHeader::setLinearSize(), and DDSHeader::setPitch().
|
static |
Definition at line 127 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::mipmapCount(), DirectDrawSurface::printInfo(), and DDSHeader::setMipmapCount().
|
static |
Definition at line 126 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo(), DDSHeader::setLinearSize(), and DDSHeader::setPitch().
|
static |
Definition at line 123 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::DDSHeader(), and DirectDrawSurface::printInfo().
|
static |
Definition at line 124 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isValid(), DirectDrawSurface::printInfo(), DDSHeader::setWidth(), and DirectDrawSurface::width().
|
static |
Definition at line 65 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::hasAlpha(), and DirectDrawSurface::isSupported().
|
static |
Definition at line 66 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::DirectDrawSurface(), DirectDrawSurface::hasAlpha(), and DirectDrawSurface::isSupported().
|
static |
Definition at line 58 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::DDSHeader(), imb_load_dds(), and DirectDrawSurface::isValid().
|
static |
Definition at line 72 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::hasDX10Header(), and DDSHeader::setDX10Format().
|
static |
Definition at line 59 of file DirectDrawSurface.cpp.
Referenced by FlipDXTCImage(), and DirectDrawSurface::isSupported().
|
static |
Definition at line 60 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isSupported().
|
static |
Definition at line 61 of file DirectDrawSurface.cpp.
Referenced by FlipDXTCImage(), and DirectDrawSurface::isSupported().
|
static |
Definition at line 62 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::isSupported().
|
static |
Definition at line 63 of file DirectDrawSurface.cpp.
Referenced by FlipDXTCImage(), and DirectDrawSurface::isSupported().
Definition at line 57 of file DirectDrawSurface.cpp.
Referenced by DDSHeader::DDSHeader(), and DirectDrawSurface::printInfo().
Definition at line 64 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::hasAlpha(), and DirectDrawSurface::isSupported().
|
static |
Definition at line 74 of file DirectDrawSurface.cpp.
Referenced by DirectDrawSurface::printInfo(), DDSHeader::setUserVersion(), and DDSHeader::userVersion().