Added a lot more texture formats
Former-commit-id: b3a553ea39a174d84c5cd6fcca853ee83c1e6670
This commit is contained in:
parent
ae7c54a9fc
commit
0fd535a9e8
|
|
@ -152,25 +152,49 @@ enum nzPixelFormat
|
|||
{
|
||||
nzPixelFormat_Undefined = -1,
|
||||
|
||||
nzPixelFormat_BGR8, // 3*nzUInt8
|
||||
nzPixelFormat_BGRA8, // 4*nzUInt8
|
||||
nzPixelFormat_BGR8, // 3*uint8
|
||||
nzPixelFormat_BGRA8, // 4*uint8
|
||||
nzPixelFormat_DXT1,
|
||||
nzPixelFormat_DXT3,
|
||||
nzPixelFormat_DXT5,
|
||||
nzPixelFormat_L8, // 1*nzUInt8
|
||||
nzPixelFormat_LA8, // 2*nzUInt8
|
||||
nzPixelFormat_RGB5A1, // 1*nzUInt16
|
||||
nzPixelFormat_RGB8, // 3*nzUInt8
|
||||
nzPixelFormat_RGB16F,
|
||||
nzPixelFormat_RGB16I, // 4*nzUInt16
|
||||
nzPixelFormat_L8, // 1*uint8
|
||||
nzPixelFormat_LA8, // 2*uint8
|
||||
nzPixelFormat_R8, // 1*uint8
|
||||
nzPixelFormat_R8I, // 1*int8
|
||||
nzPixelFormat_R8UI, // 1*uint8
|
||||
nzPixelFormat_R16, // 1*uint16
|
||||
nzPixelFormat_R16F, // 1*half
|
||||
nzPixelFormat_R16I, // 1*int16
|
||||
nzPixelFormat_R16UI, // 1*uint16
|
||||
nzPixelFormat_R32F, // 1*float
|
||||
nzPixelFormat_R32I, // 1*uint16
|
||||
nzPixelFormat_R32UI, // 1*uint32
|
||||
nzPixelFormat_RG8, // 2*int8
|
||||
nzPixelFormat_RG8I, // 2*int8
|
||||
nzPixelFormat_RG8UI, // 2*uint8
|
||||
nzPixelFormat_RG16, // 2*uint16
|
||||
nzPixelFormat_RG16F, // 2*half
|
||||
nzPixelFormat_RG16I, // 2*int16
|
||||
nzPixelFormat_RG16UI, // 2*uint16
|
||||
nzPixelFormat_RG32F, // 2*float
|
||||
nzPixelFormat_RG32I, // 2*uint16
|
||||
nzPixelFormat_RG32UI, // 2*uint32
|
||||
nzPixelFormat_RGB5A1, // 3*uint5 + alpha bit
|
||||
nzPixelFormat_RGB8, // 3*uint8
|
||||
nzPixelFormat_RGB16F, // 3*half
|
||||
nzPixelFormat_RGB16I, // 4*int16
|
||||
nzPixelFormat_RGB16UI, // 4*uint16
|
||||
nzPixelFormat_RGB32F, // 3*float
|
||||
nzPixelFormat_RGB32I, // 4*nzUInt32
|
||||
nzPixelFormat_RGBA4, // 1*nzUInt16
|
||||
nzPixelFormat_RGBA8, // 4*nzUInt8
|
||||
nzPixelFormat_RGBA16F,
|
||||
nzPixelFormat_RGBA16I, // 4*nzUInt16
|
||||
nzPixelFormat_RGB32I, // 4*int32
|
||||
nzPixelFormat_RGB32UI, // 4*uint32
|
||||
nzPixelFormat_RGBA4, // 4*uint4
|
||||
nzPixelFormat_RGBA8, // 4*uint8
|
||||
nzPixelFormat_RGBA16F, // 4*half
|
||||
nzPixelFormat_RGBA16I, // 4*int16
|
||||
nzPixelFormat_RGBA16UI, // 4*uint16
|
||||
nzPixelFormat_RGBA32F, // 4*float
|
||||
nzPixelFormat_RGBA32I, // 4*nzUInt32
|
||||
nzPixelFormat_RGBA32I, // 4*int32
|
||||
nzPixelFormat_RGBA32UI, // 4*uint32
|
||||
nzPixelFormat_Depth16,
|
||||
nzPixelFormat_Depth24,
|
||||
nzPixelFormat_Depth24Stencil8,
|
||||
|
|
|
|||
|
|
@ -189,28 +189,56 @@ inline nzUInt8 NzPixelFormat::GetBitsPerPixel(nzPixelFormat format)
|
|||
case nzPixelFormat_LA8:
|
||||
return 16;
|
||||
|
||||
case nzPixelFormat_RGB16F:
|
||||
return 48;
|
||||
case nzPixelFormat_R8:
|
||||
case nzPixelFormat_R8I:
|
||||
case nzPixelFormat_R8UI:
|
||||
return 8;
|
||||
|
||||
case nzPixelFormat_R16:
|
||||
case nzPixelFormat_R16F:
|
||||
case nzPixelFormat_R16I:
|
||||
case nzPixelFormat_R16UI:
|
||||
return 16;
|
||||
|
||||
case nzPixelFormat_R32F:
|
||||
case nzPixelFormat_R32I:
|
||||
case nzPixelFormat_R32UI:
|
||||
return 32;
|
||||
|
||||
case nzPixelFormat_RG8:
|
||||
case nzPixelFormat_RG8I:
|
||||
case nzPixelFormat_RG8UI:
|
||||
return 16;
|
||||
|
||||
case nzPixelFormat_RG16:
|
||||
case nzPixelFormat_RG16F:
|
||||
case nzPixelFormat_RG16I:
|
||||
case nzPixelFormat_RG16UI:
|
||||
return 32;
|
||||
|
||||
case nzPixelFormat_RG32F:
|
||||
case nzPixelFormat_RG32I:
|
||||
case nzPixelFormat_RG32UI:
|
||||
return 64;
|
||||
|
||||
case nzPixelFormat_RGB16F:
|
||||
case nzPixelFormat_RGB16I:
|
||||
case nzPixelFormat_RGB16UI:
|
||||
return 48;
|
||||
|
||||
case nzPixelFormat_RGB32F:
|
||||
return 96;
|
||||
|
||||
case nzPixelFormat_RGB32I:
|
||||
case nzPixelFormat_RGB32UI:
|
||||
return 96;
|
||||
|
||||
case nzPixelFormat_RGBA16F:
|
||||
return 64;
|
||||
|
||||
case nzPixelFormat_RGBA16I:
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
return 64;
|
||||
|
||||
case nzPixelFormat_RGBA32F:
|
||||
return 128;
|
||||
|
||||
case nzPixelFormat_RGBA32I:
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
return 128;
|
||||
|
||||
case nzPixelFormat_RGBA4:
|
||||
|
|
@ -280,18 +308,42 @@ inline nzPixelFormatType NzPixelFormat::GetType(nzPixelFormat format)
|
|||
case nzPixelFormat_DXT5:
|
||||
case nzPixelFormat_L8:
|
||||
case nzPixelFormat_LA8:
|
||||
case nzPixelFormat_R8:
|
||||
case nzPixelFormat_R8I:
|
||||
case nzPixelFormat_R8UI:
|
||||
case nzPixelFormat_R16:
|
||||
case nzPixelFormat_R16F:
|
||||
case nzPixelFormat_R16I:
|
||||
case nzPixelFormat_R16UI:
|
||||
case nzPixelFormat_R32F:
|
||||
case nzPixelFormat_R32I:
|
||||
case nzPixelFormat_R32UI:
|
||||
case nzPixelFormat_RG8:
|
||||
case nzPixelFormat_RG8I:
|
||||
case nzPixelFormat_RG8UI:
|
||||
case nzPixelFormat_RG16:
|
||||
case nzPixelFormat_RG16F:
|
||||
case nzPixelFormat_RG16I:
|
||||
case nzPixelFormat_RG16UI:
|
||||
case nzPixelFormat_RG32F:
|
||||
case nzPixelFormat_RG32I:
|
||||
case nzPixelFormat_RG32UI:
|
||||
case nzPixelFormat_RGB5A1:
|
||||
case nzPixelFormat_RGB8:
|
||||
case nzPixelFormat_RGB16F:
|
||||
case nzPixelFormat_RGB16I:
|
||||
case nzPixelFormat_RGB16UI:
|
||||
case nzPixelFormat_RGB32F:
|
||||
case nzPixelFormat_RGB32I:
|
||||
case nzPixelFormat_RGB32UI:
|
||||
case nzPixelFormat_RGBA4:
|
||||
case nzPixelFormat_RGBA8:
|
||||
case nzPixelFormat_RGBA16F:
|
||||
case nzPixelFormat_RGBA16I:
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
case nzPixelFormat_RGBA32F:
|
||||
case nzPixelFormat_RGBA32I:
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
return nzPixelFormatType_Color;
|
||||
|
||||
case nzPixelFormat_Depth16:
|
||||
|
|
@ -327,8 +379,10 @@ inline bool NzPixelFormat::HasAlpha(nzPixelFormat format)
|
|||
case nzPixelFormat_RGB5A1:
|
||||
case nzPixelFormat_RGBA16F:
|
||||
case nzPixelFormat_RGBA16I:
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
case nzPixelFormat_RGBA32F:
|
||||
case nzPixelFormat_RGBA32I:
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
case nzPixelFormat_RGBA4:
|
||||
case nzPixelFormat_RGBA8:
|
||||
return true;
|
||||
|
|
@ -336,11 +390,33 @@ inline bool NzPixelFormat::HasAlpha(nzPixelFormat format)
|
|||
case nzPixelFormat_BGR8:
|
||||
case nzPixelFormat_DXT1:
|
||||
case nzPixelFormat_L8:
|
||||
case nzPixelFormat_R8:
|
||||
case nzPixelFormat_R8I:
|
||||
case nzPixelFormat_R8UI:
|
||||
case nzPixelFormat_R16:
|
||||
case nzPixelFormat_R16F:
|
||||
case nzPixelFormat_R16I:
|
||||
case nzPixelFormat_R16UI:
|
||||
case nzPixelFormat_R32F:
|
||||
case nzPixelFormat_R32I:
|
||||
case nzPixelFormat_R32UI:
|
||||
case nzPixelFormat_RG8:
|
||||
case nzPixelFormat_RG8I:
|
||||
case nzPixelFormat_RG8UI:
|
||||
case nzPixelFormat_RG16:
|
||||
case nzPixelFormat_RG16F:
|
||||
case nzPixelFormat_RG16I:
|
||||
case nzPixelFormat_RG16UI:
|
||||
case nzPixelFormat_RG32F:
|
||||
case nzPixelFormat_RG32I:
|
||||
case nzPixelFormat_RG32UI:
|
||||
case nzPixelFormat_RGB8:
|
||||
case nzPixelFormat_RGB16F:
|
||||
case nzPixelFormat_RGB16I:
|
||||
case nzPixelFormat_RGB16UI:
|
||||
case nzPixelFormat_RGB32F:
|
||||
case nzPixelFormat_RGB32I:
|
||||
case nzPixelFormat_RGB32UI:
|
||||
case nzPixelFormat_Depth16:
|
||||
case nzPixelFormat_Depth24:
|
||||
case nzPixelFormat_Depth24Stencil8:
|
||||
|
|
@ -372,18 +448,42 @@ inline bool NzPixelFormat::IsCompressed(nzPixelFormat format)
|
|||
case nzPixelFormat_BGRA8:
|
||||
case nzPixelFormat_L8:
|
||||
case nzPixelFormat_LA8:
|
||||
case nzPixelFormat_R8:
|
||||
case nzPixelFormat_R8I:
|
||||
case nzPixelFormat_R8UI:
|
||||
case nzPixelFormat_R16:
|
||||
case nzPixelFormat_R16F:
|
||||
case nzPixelFormat_R16I:
|
||||
case nzPixelFormat_R16UI:
|
||||
case nzPixelFormat_R32F:
|
||||
case nzPixelFormat_R32I:
|
||||
case nzPixelFormat_R32UI:
|
||||
case nzPixelFormat_RG8:
|
||||
case nzPixelFormat_RG8I:
|
||||
case nzPixelFormat_RG8UI:
|
||||
case nzPixelFormat_RG16:
|
||||
case nzPixelFormat_RG16F:
|
||||
case nzPixelFormat_RG16I:
|
||||
case nzPixelFormat_RG16UI:
|
||||
case nzPixelFormat_RG32F:
|
||||
case nzPixelFormat_RG32I:
|
||||
case nzPixelFormat_RG32UI:
|
||||
case nzPixelFormat_RGB5A1:
|
||||
case nzPixelFormat_RGB8:
|
||||
case nzPixelFormat_RGB16F:
|
||||
case nzPixelFormat_RGB16I:
|
||||
case nzPixelFormat_RGB16UI:
|
||||
case nzPixelFormat_RGB32F:
|
||||
case nzPixelFormat_RGB32I:
|
||||
case nzPixelFormat_RGB32UI:
|
||||
case nzPixelFormat_RGBA4:
|
||||
case nzPixelFormat_RGBA8:
|
||||
case nzPixelFormat_RGBA16F:
|
||||
case nzPixelFormat_RGBA16I:
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
case nzPixelFormat_RGBA32F:
|
||||
case nzPixelFormat_RGBA32I:
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
case nzPixelFormat_Depth16:
|
||||
case nzPixelFormat_Depth24:
|
||||
case nzPixelFormat_Depth24Stencil8:
|
||||
|
|
@ -450,6 +550,66 @@ inline NzString NzPixelFormat::ToString(nzPixelFormat format)
|
|||
case nzPixelFormat_LA8:
|
||||
return "LA8";
|
||||
|
||||
case nzPixelFormat_R8:
|
||||
return "R8";
|
||||
|
||||
case nzPixelFormat_R8I:
|
||||
return "R8I";
|
||||
|
||||
case nzPixelFormat_R8UI:
|
||||
return "R8UI";
|
||||
|
||||
case nzPixelFormat_R16:
|
||||
return "R16";
|
||||
|
||||
case nzPixelFormat_R16F:
|
||||
return "R16F";
|
||||
|
||||
case nzPixelFormat_R16I:
|
||||
return "R16I";
|
||||
|
||||
case nzPixelFormat_R16UI:
|
||||
return "R16UI";
|
||||
|
||||
case nzPixelFormat_R32F:
|
||||
return "R32F";
|
||||
|
||||
case nzPixelFormat_R32I:
|
||||
return "R32I";
|
||||
|
||||
case nzPixelFormat_R32UI:
|
||||
return "R32UI";
|
||||
|
||||
case nzPixelFormat_RG8:
|
||||
return "RG8";
|
||||
|
||||
case nzPixelFormat_RG8I:
|
||||
return "RG8I";
|
||||
|
||||
case nzPixelFormat_RG8UI:
|
||||
return "RG8UI";
|
||||
|
||||
case nzPixelFormat_RG16:
|
||||
return "RG16";
|
||||
|
||||
case nzPixelFormat_RG16F:
|
||||
return "RG16F";
|
||||
|
||||
case nzPixelFormat_RG16I:
|
||||
return "RG16I";
|
||||
|
||||
case nzPixelFormat_RG16UI:
|
||||
return "RG16UI";
|
||||
|
||||
case nzPixelFormat_RG32F:
|
||||
return "RG32F";
|
||||
|
||||
case nzPixelFormat_RG32I:
|
||||
return "RG32I";
|
||||
|
||||
case nzPixelFormat_RG32UI:
|
||||
return "RG32UI";
|
||||
|
||||
case nzPixelFormat_RGB5A1:
|
||||
return "RGB5A1";
|
||||
|
||||
|
|
@ -462,12 +622,18 @@ inline NzString NzPixelFormat::ToString(nzPixelFormat format)
|
|||
case nzPixelFormat_RGB16I:
|
||||
return "RGB16I";
|
||||
|
||||
case nzPixelFormat_RGB16UI:
|
||||
return "RGB16UI";
|
||||
|
||||
case nzPixelFormat_RGB32F:
|
||||
return "RGB32F";
|
||||
|
||||
case nzPixelFormat_RGB32I:
|
||||
return "RGB32I";
|
||||
|
||||
case nzPixelFormat_RGB32UI:
|
||||
return "RGB32UI";
|
||||
|
||||
case nzPixelFormat_RGBA4:
|
||||
return "RGBA4";
|
||||
|
||||
|
|
@ -480,12 +646,18 @@ inline NzString NzPixelFormat::ToString(nzPixelFormat format)
|
|||
case nzPixelFormat_RGBA16I:
|
||||
return "RGBA16I";
|
||||
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
return "RGBA16UI";
|
||||
|
||||
case nzPixelFormat_RGBA32F:
|
||||
return "RGBA32F";
|
||||
|
||||
case nzPixelFormat_RGBA32I:
|
||||
return "RGBA32I";
|
||||
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
return "RGBA32UI";
|
||||
|
||||
case nzPixelFormat_Depth16:
|
||||
return "Depth16";
|
||||
|
||||
|
|
|
|||
|
|
@ -1340,6 +1340,7 @@ void NzOpenGL::SetViewport(const NzRecti& viewport)
|
|||
|
||||
bool NzOpenGL::TranslateFormat(nzPixelFormat pixelFormat, Format* format, FormatType type)
|
||||
{
|
||||
///FIXME: Vérifier certains dataType
|
||||
switch (pixelFormat)
|
||||
{
|
||||
case nzPixelFormat_BGR8:
|
||||
|
|
@ -1376,6 +1377,126 @@ bool NzOpenGL::TranslateFormat(nzPixelFormat pixelFormat, Format* format, Format
|
|||
case nzPixelFormat_LA8:
|
||||
return false;
|
||||
|
||||
case nzPixelFormat_R8:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->internalFormat = GL_R8;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R8I:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_BYTE;
|
||||
format->internalFormat = GL_R8I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R8UI:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->internalFormat = GL_R8UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R16:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_UNSIGNED_SHORT;
|
||||
format->internalFormat = GL_R16;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R16F:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_HALF_FLOAT; ///FIXME: Correct ?
|
||||
format->internalFormat = GL_R16F;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R16I:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_SHORT;
|
||||
format->internalFormat = GL_R16I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R16UI:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_UNSIGNED_SHORT;
|
||||
format->internalFormat = GL_R16UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R32F:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_FLOAT;
|
||||
format->internalFormat = GL_R32F;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R32I:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_INT;
|
||||
format->internalFormat = GL_R32I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_R32UI:
|
||||
format->dataFormat = GL_RED;
|
||||
format->dataType = GL_UNSIGNED_INT;
|
||||
format->internalFormat = GL_R32UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG8:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->internalFormat = GL_RG8;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG8I:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_BYTE;
|
||||
format->internalFormat = GL_RG8I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG8UI:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->internalFormat = GL_RG8UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG16:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_UNSIGNED_SHORT;
|
||||
format->internalFormat = GL_RG16;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG16F:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_HALF_FLOAT; ///FIXME: Correct ?
|
||||
format->internalFormat = GL_RG16F;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG16I:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_SHORT;
|
||||
format->internalFormat = GL_RG16I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG16UI:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_UNSIGNED_SHORT;
|
||||
format->internalFormat = GL_RG16UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG32F:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_FLOAT;
|
||||
format->internalFormat = GL_RG32F;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG32I:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_INT;
|
||||
format->internalFormat = GL_RG32I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RG32UI:
|
||||
format->dataFormat = GL_RG;
|
||||
format->dataType = GL_UNSIGNED_INT;
|
||||
format->internalFormat = GL_RG32UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGB5A1:
|
||||
format->dataFormat = GL_RGBA;
|
||||
format->dataType = GL_UNSIGNED_SHORT_5_5_5_1;
|
||||
|
|
@ -1390,16 +1511,22 @@ bool NzOpenGL::TranslateFormat(nzPixelFormat pixelFormat, Format* format, Format
|
|||
|
||||
case nzPixelFormat_RGB16F:
|
||||
format->dataFormat = GL_RGB;
|
||||
format->dataType = GL_FLOAT;
|
||||
format->dataType = GL_HALF_FLOAT; ///FIXME: Correct ?
|
||||
format->internalFormat = GL_RGB16F;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGB16I:
|
||||
format->dataFormat = GL_RGB;
|
||||
format->dataType = GL_INT;
|
||||
format->dataType = GL_SHORT;
|
||||
format->internalFormat = GL_RGB16I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGB16UI:
|
||||
format->dataFormat = GL_RGB;
|
||||
format->dataType = GL_UNSIGNED_SHORT;
|
||||
format->internalFormat = GL_RGB16UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGB32F:
|
||||
format->dataFormat = GL_RGB;
|
||||
format->dataType = GL_FLOAT;
|
||||
|
|
@ -1412,6 +1539,12 @@ bool NzOpenGL::TranslateFormat(nzPixelFormat pixelFormat, Format* format, Format
|
|||
format->internalFormat = GL_RGB32I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGB32UI:
|
||||
format->dataFormat = GL_RGB;
|
||||
format->dataType = GL_UNSIGNED_INT;
|
||||
format->internalFormat = GL_RGB32UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGBA4:
|
||||
format->dataFormat = GL_RGBA;
|
||||
format->dataType = GL_UNSIGNED_SHORT_4_4_4_4;
|
||||
|
|
@ -1426,14 +1559,20 @@ bool NzOpenGL::TranslateFormat(nzPixelFormat pixelFormat, Format* format, Format
|
|||
|
||||
case nzPixelFormat_RGBA16F:
|
||||
format->dataFormat = GL_RGBA;
|
||||
format->dataType = GL_FLOAT;
|
||||
format->dataType = GL_HALF_FLOAT; ///FIXME: Correct ?
|
||||
format->internalFormat = GL_RGBA16F;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGBA16I:
|
||||
format->dataFormat = GL_RGBA;
|
||||
format->dataType = GL_SHORT;
|
||||
format->internalFormat = GL_RGBA16I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
format->dataFormat = GL_RGBA;
|
||||
format->dataType = GL_INT;
|
||||
format->internalFormat = GL_RGBA32I;
|
||||
format->internalFormat = GL_RGBA16UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGBA32F:
|
||||
|
|
@ -1448,21 +1587,27 @@ bool NzOpenGL::TranslateFormat(nzPixelFormat pixelFormat, Format* format, Format
|
|||
format->internalFormat = GL_RGB32I;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
format->dataFormat = GL_RGB;
|
||||
format->dataType = GL_UNSIGNED_INT;
|
||||
format->internalFormat = GL_RGB32UI;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_Depth16:
|
||||
format->dataFormat = GL_DEPTH_COMPONENT;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->dataType = GL_UNSIGNED_SHORT;
|
||||
format->internalFormat = GL_DEPTH_COMPONENT16;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_Depth24:
|
||||
format->dataFormat = GL_DEPTH_COMPONENT;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->dataType = GL_UNSIGNED_INT;
|
||||
format->internalFormat = GL_DEPTH_COMPONENT24;
|
||||
return true;
|
||||
|
||||
case nzPixelFormat_Depth24Stencil8:
|
||||
format->dataFormat = GL_DEPTH_STENCIL;
|
||||
format->dataType = GL_UNSIGNED_BYTE;
|
||||
format->dataType = GL_UNSIGNED_INT_24_8;
|
||||
format->internalFormat = GL_DEPTH24_STENCIL8;
|
||||
return true;
|
||||
|
||||
|
|
|
|||
|
|
@ -1307,14 +1307,38 @@ bool NzTexture::IsFormatSupported(nzPixelFormat format)
|
|||
return true;
|
||||
|
||||
// Formats supportés depuis OpenGL 3
|
||||
case nzPixelFormat_R8:
|
||||
case nzPixelFormat_R8I:
|
||||
case nzPixelFormat_R8UI:
|
||||
case nzPixelFormat_R16:
|
||||
case nzPixelFormat_R16F:
|
||||
case nzPixelFormat_R16I:
|
||||
case nzPixelFormat_R16UI:
|
||||
case nzPixelFormat_R32F:
|
||||
case nzPixelFormat_R32I:
|
||||
case nzPixelFormat_R32UI:
|
||||
case nzPixelFormat_RG8:
|
||||
case nzPixelFormat_RG8I:
|
||||
case nzPixelFormat_RG8UI:
|
||||
case nzPixelFormat_RG16:
|
||||
case nzPixelFormat_RG16F:
|
||||
case nzPixelFormat_RG16I:
|
||||
case nzPixelFormat_RG16UI:
|
||||
case nzPixelFormat_RG32F:
|
||||
case nzPixelFormat_RG32I:
|
||||
case nzPixelFormat_RG32UI:
|
||||
case nzPixelFormat_RGB16F:
|
||||
case nzPixelFormat_RGB16I:
|
||||
case nzPixelFormat_RGB16UI:
|
||||
case nzPixelFormat_RGB32F:
|
||||
case nzPixelFormat_RGB32I:
|
||||
case nzPixelFormat_RGB32UI:
|
||||
case nzPixelFormat_RGBA16F:
|
||||
case nzPixelFormat_RGBA16I:
|
||||
case nzPixelFormat_RGBA16UI:
|
||||
case nzPixelFormat_RGBA32F:
|
||||
case nzPixelFormat_RGBA32I:
|
||||
case nzPixelFormat_RGBA32UI:
|
||||
return NzOpenGL::GetVersion() >= 300;
|
||||
|
||||
// Formats de profondeur (Supportés avec les FBOs)
|
||||
|
|
|
|||
Loading…
Reference in New Issue