QOpenGLTexture Class

The QOpenGLTexture class encapsulates an OpenGL texture object. More...

Header: #include <QOpenGLTexture>
qmake: QT += gui
Since: Qt 5.2

This class was introduced in Qt 5.2.

Public Types

enum BindingTarget { BindingTarget1D, BindingTarget1DArray, BindingTarget2D, BindingTarget2DArray, BindingTarget3D, …, BindingTargetBuffer }
enum ComparisonFunction { CompareLessEqual, CompareGreaterEqual, CompareLess, CompareGreater, CompareEqual, …, CompareNever }
enum ComparisonMode { CompareRefToTexture, CompareNone }
enum CoordinateDirection { DirectionS, DirectionT, DirectionR }
enum CubeMapFace { CubeMapPositiveX, CubeMapNegativeX, CubeMapPositiveY, CubeMapNegativeY, CubeMapPositiveZ, CubeMapNegativeZ }
enum DepthStencilMode { DepthMode, StencilMode }
enum Feature { ImmutableStorage, ImmutableMultisampleStorage, TextureRectangle, TextureArrays, Texture3D, …, TextureMipMapLevel }
enum Filter { Nearest, Linear, NearestMipMapNearest, NearestMipMapLinear, LinearMipMapNearest, LinearMipMapLinear }
enum MipMapGeneration { GenerateMipMaps, DontGenerateMipMaps }
enum PixelFormat { NoSourceFormat, Red, RG, RGB, BGR, …, LuminanceAlpha }
enum PixelType { NoPixelType, Int8, UInt8, Int16, UInt16, …, Float32_D32_UInt32_S8_X24 }
enum SwizzleComponent { SwizzleRed, SwizzleGreen, SwizzleBlue, SwizzleAlpha }
enum SwizzleValue { RedValue, GreenValue, BlueValue, AlphaValue, ZeroValue, OneValue }
enum Target { Target1D, Target1DArray, Target2D, Target2DArray, Target3D, …, TargetBuffer }
enum TextureFormat { NoFormat, R8_UNorm, RG8_UNorm, RGB8_UNorm, RGBA8_UNorm, …, LuminanceAlphaFormat }
enum TextureUnitReset { ResetTextureUnit, DontResetTextureUnit }
enum WrapMode { Repeat, MirroredRepeat, ClampToEdge, ClampToBorder }

Detailed Description

QOpenGLTexture makes it easy to work with OpenGL textures and the myriad features and targets that they offer depending upon the capabilities of your OpenGL implementation.

The typical usage pattern for QOpenGLTexture is

  • Instantiate the object specifying the texture target type
  • Set properties that affect the storage requirements e.g. storage format, dimensions
  • Allocate the server-side storage
  • Optionally upload pixel data
  • Optionally set any additional properties e.g. filtering and border options
  • Render with texture or render to texture

In the common case of simply using a QImage as the source of texture pixel data most of the above steps are performed automatically.

 // Prepare texture
 QOpenGLTexture *texture = new QOpenGLTexture(QImage(fileName).mirrored());
 texture->setMinificationFilter(QOpenGLTexture::LinearMipMapLinear);
 texture->setMagnificationFilter(QOpenGLTexture::Linear);
 ...
 // Render with texture
 texture->bind();
 glDrawArrays(...);

Note that the QImage is mirrored vertically to account for the fact that OpenGL and QImage use opposite directions for the y axis. Another option would be to transform your texture coordinates.

Member Type Documentation

enum QOpenGLTexture::BindingTarget

This enum defines the possible binding targets of texture units.

ConstantValueDescription
QOpenGLTexture::BindingTarget1D0x8068Equivalent to GL_TEXTURE_BINDING_1D
QOpenGLTexture::BindingTarget1DArray0x8C1CEquivalent to GL_TEXTURE_BINDING_1D_ARRAY
QOpenGLTexture::BindingTarget2D0x8069Equivalent to GL_TEXTURE_BINDING_2D
QOpenGLTexture::BindingTarget2DArray0x8C1DEquivalent to GL_TEXTURE_BINDING_2D_ARRAY
QOpenGLTexture::BindingTarget3D0x806AEquivalent to GL_TEXTURE_BINDING_3D
QOpenGLTexture::BindingTargetCubeMap0x8514Equivalent to GL_TEXTURE_BINDING_CUBE_MAP
QOpenGLTexture::BindingTargetCubeMapArray0x900AEquivalent to GL_TEXTURE_BINDING_CUBE_MAP_ARRAY
QOpenGLTexture::BindingTarget2DMultisample0x9104Equivalent to GL_TEXTURE_BINDING_2D_MULTISAMPLE
QOpenGLTexture::BindingTarget2DMultisampleArray0x9105Equivalent to GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY
QOpenGLTexture::BindingTargetRectangle0x84F6Equivalent to GL_TEXTURE_BINDING_RECTANGLE
QOpenGLTexture::BindingTargetBuffer0x8C2CEquivalent to GL_TEXTURE_BINDING_BUFFER

enum QOpenGLTexture::ComparisonFunction

This enum specifies which comparison operator is used when texture comparison is enabled on this texture.

ConstantValueDescription
QOpenGLTexture::CompareLessEqual0x0203Equivalent to GL_LEQUAL.
QOpenGLTexture::CompareGreaterEqual0x0206Equivalent to GL_GEQUAL.
QOpenGLTexture::CompareLess0x0201Equivalent to GL_LESS.
QOpenGLTexture::CompareGreater0x0204Equivalent to GL_GREATER.
QOpenGLTexture::CompareEqual0x0202Equivalent to GL_EQUAL.
QOpenGLTexture::CommpareNotEqual0x0205Equivalent to GL_NOTEQUAL.
QOpenGLTexture::CompareAlways0x0207Equivalent to GL_ALWAYS.
QOpenGLTexture::CompareNever0x0200Equivalent to GL_NEVER.

This enum was introduced or modified in Qt 5.5.

enum QOpenGLTexture::ComparisonMode

This enum specifies which comparison mode is used when sampling this texture.

ConstantValueDescription
QOpenGLTexture::CompareRefToTexture0x884EEquivalent to GL_COMPARE_REF_TO_TEXTURE.
QOpenGLTexture::CompareNone0x0000Equivalent to GL_NONE.

This enum was introduced or modified in Qt 5.5.

enum QOpenGLTexture::CoordinateDirection

This enum defines the possible texture coordinate directions

ConstantValueDescription
QOpenGLTexture::DirectionS0x2802The horizontal direction. Equivalent to GL_TEXTURE_WRAP_S
QOpenGLTexture::DirectionT0x2803The vertical direction. Equivalent to GL_TEXTURE_WRAP_T
QOpenGLTexture::DirectionR0x8072The depth direction. Equivalent to GL_TEXTURE_WRAP_R

enum QOpenGLTexture::CubeMapFace

This enum defines the possible CubeMap faces.

ConstantValueDescription
QOpenGLTexture::CubeMapPositiveX0x8515Equivalent to GL_TEXTURE_CUBE_MAP_POSITIVE_X
QOpenGLTexture::CubeMapNegativeX0x8516Equivalent to GL_TEXTURE_CUBE_MAP_NEGATIVE_X
QOpenGLTexture::CubeMapPositiveY0x8517Equivalent to GL_TEXTURE_CUBE_MAP_POSITIVE_Y
QOpenGLTexture::CubeMapNegativeY0x8518Equivalent to GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
QOpenGLTexture::CubeMapPositiveZ0x8519Equivalent to GL_TEXTURE_CUBE_MAP_POSITIVE_Z
QOpenGLTexture::CubeMapNegativeZ0x851AEquivalent to GL_TEXTURE_CUBE_MAP_NEGATIVE_Z

enum QOpenGLTexture::DepthStencilMode

This enum specifies which component of a depth/stencil texture is accessed when the texture is sampled.

ConstantValueDescription
QOpenGLTexture::DepthMode0x1902Equivalent to GL_DEPTH_COMPONENT.
QOpenGLTexture::StencilMode0x1901Equivalent to GL_STENCIL_INDEX.

This enum was introduced or modified in Qt 5.4.

enum QOpenGLTexture::Feature

This enum defines the OpenGL texture-related features that can be tested for.

ConstantValueDescription
QOpenGLTexture::ImmutableStorage0x00000001Support for immutable texture storage
QOpenGLTexture::ImmutableMultisampleStorage0x00000002Support for immutable texture storage with multisample targets
QOpenGLTexture::TextureRectangle0x00000004Support for the GL_TEXTURE_RECTANGLE target
QOpenGLTexture::TextureArrays0x00000008Support for texture targets with array layers
QOpenGLTexture::Texture3D0x00000010Support for the 3 dimensional texture target
QOpenGLTexture::TextureMultisample0x00000020Support for texture targets that have multisample capabilities
QOpenGLTexture::TextureBuffer0x00000040Support for textures that use OpenGL buffer objects as their data source
QOpenGLTexture::TextureCubeMapArrays0x00000080Support for cubemap array texture target
QOpenGLTexture::Swizzle0x00000100Support for texture component swizzle masks
QOpenGLTexture::StencilTexturing0x00000200Support for stencil texturing (i.e. looking up depth or stencil components of a combined depth/stencil format texture in GLSL shaders).
QOpenGLTexture::AnisotropicFiltering0x00000400Support for anisotropic texture filtering
QOpenGLTexture::NPOTTextures0x00000800Basic support for non-power-of-two textures
QOpenGLTexture::NPOTTextureRepeat0x00001000Full support for non-power-of-two textures including texture repeat modes
QOpenGLTexture::Texture1D0x00002000Support for the 1 dimensional texture target
QOpenGLTexture::TextureComparisonOperators0x00004000Support for texture comparison operators
QOpenGLTexture::TextureMipMapLevel0x00008000Support for setting the base and maximum mipmap levels

enum QOpenGLTexture::Filter

This enum defines the filtering parameters for a QOpenGLTexture object.

ConstantValueDescription
QOpenGLTexture::Nearest0x2600Equivalent to GL_NEAREST
QOpenGLTexture::Linear0x2601Equivalent to GL_LINEAR
QOpenGLTexture::NearestMipMapNearest0x2700Equivalent to GL_NEAREST_MIPMAP_NEAREST
QOpenGLTexture::NearestMipMapLinear0x2702Equivalent to GL_NEAREST_MIPMAP_LINEAR
QOpenGLTexture::LinearMipMapNearest0x2701Equivalent to GL_LINEAR_MIPMAP_NEAREST
QOpenGLTexture::LinearMipMapLinear0x2703Equivalent to GL_LINEAR_MIPMAP_LINEAR

enum QOpenGLTexture::MipMapGeneration

This enum defines the options to control mipmap generation.

ConstantValueDescription
QOpenGLTexture::GenerateMipMaps0Mipmaps should be generated
QOpenGLTexture::DontGenerateMipMaps1Mipmaps should not be generated

enum QOpenGLTexture::PixelFormat

This enum defines the possible client-side pixel formats for a pixel transfer operation.

ConstantValueDescription
QOpenGLTexture::NoSourceFormat0Equivalent to GL_NONE
QOpenGLTexture::Red0x1903Equivalent to GL_RED
QOpenGLTexture::RG0x8227Equivalent to GL_RG
QOpenGLTexture::RGB0x1907Equivalent to GL_RGB
QOpenGLTexture::BGR0x80E0Equivalent to GL_BGR
QOpenGLTexture::RGBA0x1908Equivalent to GL_RGBA
QOpenGLTexture::BGRA0x80E1Equivalent to GL_BGRA
QOpenGLTexture::Red_Integer0x8D94Equivalent to GL_RED_INTEGER
QOpenGLTexture::RG_Integer0x8228Equivalent to GL_RG_INTEGER
QOpenGLTexture::RGB_Integer0x8D98Equivalent to GL_RGB_INTEGER
QOpenGLTexture::BGR_Integer0x8D9AEquivalent to GL_BGR_INTEGER
QOpenGLTexture::RGBA_Integer0x8D99Equivalent to GL_RGBA_INTEGER
QOpenGLTexture::BGRA_Integer0x8D9BEquivalent to GL_BGRA_INTEGER
QOpenGLTexture::Stencil0x1901Equivalent to GL_STENCIL_INDEX. Introduced in Qt 5.4
QOpenGLTexture::Depth0x1902Equivalent to GL_DEPTH_COMPONENT
QOpenGLTexture::DepthStencil0x84F9Equivalent to GL_DEPTH_STENCIL
QOpenGLTexture::Alpha0x1906Equivalent to GL_ALPHA (OpenGL ES 2 only)
QOpenGLTexture::Luminance0x1909Equivalent to GL_LUMINANCE (OpenGL ES 2 only)
QOpenGLTexture::LuminanceAlpha0x190AEquivalent to GL_LUMINANCE_ALPHA (OpenGL ES 2 only)

enum QOpenGLTexture::PixelType

This enum defines the possible pixel data types for a pixel transfer operation

ConstantValueDescription
QOpenGLTexture::NoPixelType0Equivalent to GL_NONE
QOpenGLTexture::Int80x1400Equivalent to GL_BYTE
QOpenGLTexture::UInt80x1401Equivalent to GL_UNSIGNED_BYTE
QOpenGLTexture::Int160x1402Equivalent to GL_SHORT
QOpenGLTexture::UInt160x1403Equivalent to GL_UNSIGNED_SHORT
QOpenGLTexture::Int320x1404Equivalent to GL_INT
QOpenGLTexture::UInt320x1405Equivalent to GL_UNSIGNED_INT
QOpenGLTexture::Float160x140BEquivalent to GL_HALF_FLOAT
QOpenGLTexture::Float16OES0x8D61Equivalent to GL_HALF_FLOAT_OES
QOpenGLTexture::Float320x1406Equivalent to GL_FLOAT
QOpenGLTexture::UInt32_RGB9_E50x8C3EEquivalent to GL_UNSIGNED_INT_5_9_9_9_REV
QOpenGLTexture::UInt32_RG11B10F0x8C3BEquivalent to GL_UNSIGNED_INT_10F_11F_11F_REV
QOpenGLTexture::UInt8_RG3B20x8032Equivalent to GL_UNSIGNED_BYTE_3_3_2
QOpenGLTexture::UInt8_RG3B2_Rev0x8362Equivalent to GL_UNSIGNED_BYTE_2_3_3_REV
QOpenGLTexture::UInt16_RGB5A10x8034Equivalent to GL_UNSIGNED_SHORT_5_5_5_1
QOpenGLTexture::UInt16_RGB5A1_Rev0x8366Equivalent to GL_UNSIGNED_SHORT_1_5_5_5_REV
QOpenGLTexture::UInt16_R5G6B50x8363Equivalent to GL_UNSIGNED_SHORT_5_6_5
QOpenGLTexture::UInt16_R5G6B5_Rev0x8364Equivalent to GL_UNSIGNED_SHORT_5_6_5_REV
QOpenGLTexture::UInt16_RGBA40x8033Equivalent to GL_UNSIGNED_SHORT_4_4_4_4
QOpenGLTexture::UInt16_RGBA4_Rev0x8365Equivalent to GL_UNSIGNED_SHORT_4_4_4_4_REV
QOpenGLTexture::UInt32_RGBA80x8035Equivalent to GL_UNSIGNED_INT_8_8_8_8
QOpenGLTexture::UInt32_RGBA8_Rev0x8367Equivalent to GL_UNSIGNED_INT_8_8_8_8_REV
QOpenGLTexture::UInt32_RGB10A20x8036Equivalent to GL_UNSIGNED_INT_10_10_10_2
QOpenGLTexture::UInt32_RGB10A2_Rev0x8368Equivalent to GL_UNSIGNED_INT_2_10_10_10_REV
QOpenGLTexture::UInt32_D24S80x84FAEquivalent to GL_UNSIGNED_INT_24_8. Introduced in Qt 5.4
QOpenGLTexture::Float32_D32_UInt32_S8_X240x8DADEquivalent to GL_FLOAT_32_UNSIGNED_INT_24_8_REV. Introduced in Qt 5.4

enum QOpenGLTexture::SwizzleComponent

This enum defines the texture color components that can be assigned a swizzle mask.

ConstantValueDescription
QOpenGLTexture::SwizzleRed0x8E42The red component. Equivalent to GL_TEXTURE_SWIZZLE_R
QOpenGLTexture::SwizzleGreen0x8E43The green component. Equivalent to GL_TEXTURE_SWIZZLE_G
QOpenGLTexture::SwizzleBlue0x8E44The blue component. Equivalent to GL_TEXTURE_SWIZZLE_B
QOpenGLTexture::SwizzleAlpha0x8E45The alpha component. Equivalent to GL_TEXTURE_SWIZZLE_A

enum QOpenGLTexture::SwizzleValue

This enum defines the possible mask values for texture swizzling.

ConstantValueDescription
QOpenGLTexture::RedValue0x1903Maps the component to the red channel. Equivalent to GL_RED
QOpenGLTexture::GreenValue0x1904Maps the component to the green channel. Equivalent to GL_GREEN
QOpenGLTexture::BlueValue0x1905Maps the component to the blue channel. Equivalent to GL_BLUE
QOpenGLTexture::AlphaValue0x1906Maps the component to the alpha channel. Equivalent to GL_ALPHA
QOpenGLTexture::ZeroValue0Maps the component to a fixed value of 0. Equivalent to GL_ZERO
QOpenGLTexture::OneValue1Maps the component to a fixed value of 1. Equivalent to GL_ONE

enum QOpenGLTexture::Target

This enum defines the texture target of a QOpenGLTexture object. For more information on creating array textures, see Array Texture.

ConstantValueDescription
QOpenGLTexture::Target1D0x0DE0A 1-dimensional texture. Equivalent to GL_TEXTURE_1D.
QOpenGLTexture::Target1DArray0x8C18An array of 1-dimensional textures. Equivalent to GL_TEXTURE_1D_ARRAY
QOpenGLTexture::Target2D0x0DE1A 2-dimensional texture. Equivalent to GL_TEXTURE_2D
QOpenGLTexture::Target2DArray0x8C1AAn array of 2-dimensional textures. Equivalent to GL_TEXTURE_2D_ARRAY
QOpenGLTexture::Target3D0x806FA 3-dimensional texture. Equivalent to GL_TEXTURE_3D
QOpenGLTexture::TargetCubeMap0x8513A cubemap texture. Equivalent to GL_TEXTURE_CUBE_MAP
QOpenGLTexture::TargetCubeMapArray0x9009An array of cubemap textures. Equivalent to GL_TEXTURE_CUBE_MAP_ARRAY
QOpenGLTexture::Target2DMultisample0x9100A 2-dimensional texture with multisample support. Equivalent to GL_TEXTURE_2D_MULTISAMPLE
QOpenGLTexture::Target2DMultisampleArray0x9102An array of 2-dimensional textures with multisample support. Equivalent to GL_TEXTURE_2D_MULTISAMPLE_ARRAY
QOpenGLTexture::TargetRectangle0x84F5A rectangular 2-dimensional texture. Equivalent to GL_TEXTURE_RECTANGLE
QOpenGLTexture::TargetBuffer0x8C2AA texture with data from an OpenGL buffer object. Equivalent to GL_TEXTURE_BUFFER

enum QOpenGLTexture::TextureFormat

This enum defines the possible texture formats. Depending upon your OpenGL implementation only a subset of these may be supported.

ConstantValueDescription
QOpenGLTexture::NoFormat0Equivalent to GL_NONE
QOpenGLTexture::R8_UNorm0x8229Equivalent to GL_R8
QOpenGLTexture::RG8_UNorm0x822BEquivalent to GL_RG8
QOpenGLTexture::RGB8_UNorm0x8051Equivalent to GL_RGB8
QOpenGLTexture::RGBA8_UNorm0x8058Equivalent to GL_RGBA8
QOpenGLTexture::R16_UNorm0x822AEquivalent to GL_R16
QOpenGLTexture::RG16_UNorm0x822CEquivalent to GL_RG16
QOpenGLTexture::RGB16_UNorm0x8054Equivalent to GL_RGB16
QOpenGLTexture::RGBA16_UNorm0x805BEquivalent to GL_RGBA16
QOpenGLTexture::R8_SNorm0x8F94Equivalent to GL_R8_SNORM
QOpenGLTexture::RG8_SNorm0x8F95Equivalent to GL_RG8_SNORM
QOpenGLTexture::RGB8_SNorm0x8F96Equivalent to GL_RGB8_SNORM
QOpenGLTexture::RGBA8_SNorm0x8F97Equivalent to GL_RGBA8_SNORM
QOpenGLTexture::R16_SNorm0x8F98Equivalent to GL_R16_SNORM
QOpenGLTexture::RG16_SNorm0x8F99Equivalent to GL_RG16_SNORM
QOpenGLTexture::RGB16_SNorm0x8F9AEquivalent to GL_RGB16_SNORM
QOpenGLTexture::RGBA16_SNorm0x8F9BEquivalent to GL_RGBA16_SNORM
QOpenGLTexture::R8U0x8232Equivalent to GL_R8UI
QOpenGLTexture::RG8U0x8238Equivalent to GL_RG8UI
QOpenGLTexture::RGB8U0x8D7DEquivalent to GL_RGB8UI
QOpenGLTexture::RGBA8U0x8D7CEquivalent to GL_RGBA8UI
QOpenGLTexture::R16U0x8234Equivalent to GL_R16UI
QOpenGLTexture::RG16U0x823AEquivalent to GL_RG16UI
QOpenGLTexture::RGB16U0x8D77Equivalent to GL_RGB16UI
QOpenGLTexture::RGBA16U0x8D76Equivalent to GL_RGBA16UI
QOpenGLTexture::R32U0x8236Equivalent to GL_R32UI
QOpenGLTexture::RG32U0x823CEquivalent to GL_RG32UI
QOpenGLTexture::RGB32U0x8D71Equivalent to GL_RGB32UI
QOpenGLTexture::RGBA32U0x8D70Equivalent to GL_RGBA32UI
QOpenGLTexture::R8I0x8231Equivalent to GL_R8I
QOpenGLTexture::RG8I0x8237Equivalent to GL_RG8I
QOpenGLTexture::RGB8I0x8D8FEquivalent to GL_RGB8I
QOpenGLTexture::RGBA8I0x8D8EEquivalent to GL_RGBA8I
QOpenGLTexture::R16I0x8233Equivalent to GL_R16I
QOpenGLTexture::RG16I0x8239Equivalent to GL_RG16I
QOpenGLTexture::RGB16I0x8D89Equivalent to GL_RGB16I
QOpenGLTexture::RGBA16I0x8D88Equivalent to GL_RGBA16I
QOpenGLTexture::R32I0x8235Equivalent to GL_R32I
QOpenGLTexture::RG32I0x823BEquivalent to GL_RG32I
QOpenGLTexture::RGB32I0x8D83Equivalent to GL_RGB32I
QOpenGLTexture::RGBA32I0x8D82Equivalent to GL_RGBA32I
QOpenGLTexture::R16F0x822DEquivalent to GL_R16F
QOpenGLTexture::RG16F0x822FEquivalent to GL_RG16F
QOpenGLTexture::RGB16F0x881BEquivalent to GL_RGB16F
QOpenGLTexture::RGBA16F0x881AEquivalent to GL_RGBA16F
QOpenGLTexture::R32F0x822EEquivalent to GL_R32F
QOpenGLTexture::RG32F0x8230Equivalent to GL_RG32F
QOpenGLTexture::RGB32F0x8815Equivalent to GL_RGB32F
QOpenGLTexture::RGBA32F0x8814Equivalent to GL_RGBA32F
QOpenGLTexture::RGB9E50x8C3DEquivalent to GL_RGB9_E5
QOpenGLTexture::RG11B10F0x8C3AEquivalent to GL_R11F_G11F_B10F
QOpenGLTexture::RG3B20x2A10Equivalent to GL_R3_G3_B2
QOpenGLTexture::R5G6B50x8D62Equivalent to GL_RGB565
QOpenGLTexture::RGB5A10x8057Equivalent to GL_RGB5_A1
QOpenGLTexture::RGBA40x8056Equivalent to GL_RGBA4
QOpenGLTexture::RGB10A20x906FEquivalent to GL_RGB10_A2UI
QOpenGLTexture::D160x81A5Equivalent to GL_DEPTH_COMPONENT16
QOpenGLTexture::D240x81A6Equivalent to GL_DEPTH_COMPONENT24
QOpenGLTexture::D24S80x88F0Equivalent to GL_DEPTH24_STENCIL8
QOpenGLTexture::D320x81A7Equivalent to GL_DEPTH_COMPONENT32
QOpenGLTexture::D32F0x8CACEquivalent to GL_DEPTH_COMPONENT32F
QOpenGLTexture::D32FS8X240x8CADEquivalent to GL_DEPTH32F_STENCIL8
QOpenGLTexture::S80x8D48Equivalent to GL_STENCIL_INDEX8. Introduced in Qt 5.4
QOpenGLTexture::RGB_DXT10x83F0Equivalent to GL_COMPRESSED_RGB_S3TC_DXT1_EXT
QOpenGLTexture::RGBA_DXT10x83F1Equivalent to GL_COMPRESSED_RGBA_S3TC_DXT1_EXT
QOpenGLTexture::RGBA_DXT30x83F2Equivalent to GL_COMPRESSED_RGBA_S3TC_DXT3_EXT
QOpenGLTexture::RGBA_DXT50x83F3Equivalent to GL_COMPRESSED_RGBA_S3TC_DXT5_EXT
QOpenGLTexture::R_ATI1N_UNorm0x8DBBEquivalent to GL_COMPRESSED_RED_RGTC1
QOpenGLTexture::R_ATI1N_SNorm0x8DBCEquivalent to GL_COMPRESSED_SIGNED_RED_RGTC1
QOpenGLTexture::RG_ATI2N_UNorm0x8DBDEquivalent to GL_COMPRESSED_RG_RGTC2
QOpenGLTexture::RG_ATI2N_SNorm0x8DBEEquivalent to GL_COMPRESSED_SIGNED_RG_RGTC2
QOpenGLTexture::RGB_BP_UNSIGNED_FLOAT0x8E8FEquivalent to GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB
QOpenGLTexture::RGB_BP_SIGNED_FLOAT0x8E8EEquivalent to GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB
QOpenGLTexture::RGB_BP_UNorm0x8E8CEquivalent to GL_COMPRESSED_RGBA_BPTC_UNORM_ARB
QOpenGLTexture::R11_EAC_UNorm0x9270Equivalent to GL_COMPRESSED_R11_EAC
QOpenGLTexture::R11_EAC_SNorm0x9271Equivalent to GL_COMPRESSED_SIGNED_R11_EAC
QOpenGLTexture::RG11_EAC_UNorm0x9272Equivalent to GL_COMPRESSED_RG11_EAC
QOpenGLTexture::RG11_EAC_SNorm0x9273Equivalent to GL_COMPRESSED_SIGNED_RG11_EAC
QOpenGLTexture::RGB8_ETC20x9274Equivalent to GL_COMPRESSED_RGB8_ETC2
QOpenGLTexture::SRGB8_ETC20x9275Equivalent to GL_COMPRESSED_SRGB8_ETC2
QOpenGLTexture::RGB8_PunchThrough_Alpha1_ETC20x9276Equivalent to GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
QOpenGLTexture::SRGB8_PunchThrough_Alpha1_ETC20x9277Equivalent to GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2
QOpenGLTexture::RGBA8_ETC2_EAC0x9278Equivalent to GL_COMPRESSED_RGBA8_ETC2_EAC
QOpenGLTexture::SRGB8_Alpha8_ETC2_EAC0x9279Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC
QOpenGLTexture::RGB8_ETC10x8D64Equivalent to GL_ETC1_RGB8_OES
QOpenGLTexture::RGBA_ASTC_4x40x93B0Equivalent to GL_COMPRESSED_RGBA_ASTC_4x4_KHR
QOpenGLTexture::RGBA_ASTC_5x40x93B1Equivalent to GL_COMPRESSED_RGBA_ASTC_5x4_KHR
QOpenGLTexture::RGBA_ASTC_5x50x93B2Equivalent to GL_COMPRESSED_RGBA_ASTC_5x5_KHR
QOpenGLTexture::RGBA_ASTC_6x50x93B3Equivalent to GL_COMPRESSED_RGBA_ASTC_6x5_KHR
QOpenGLTexture::RGBA_ASTC_6x60x93B4Equivalent to GL_COMPRESSED_RGBA_ASTC_6x6_KHR
QOpenGLTexture::RGBA_ASTC_8x50x93B5Equivalent to GL_COMPRESSED_RGBA_ASTC_8x5_KHR
QOpenGLTexture::RGBA_ASTC_8x60x93B6Equivalent to GL_COMPRESSED_RGBA_ASTC_8x6_KHR
QOpenGLTexture::RGBA_ASTC_8x80x93B7Equivalent to GL_COMPRESSED_RGBA_ASTC_8x8_KHR
QOpenGLTexture::RGBA_ASTC_10x50x93B8Equivalent to GL_COMPRESSED_RGBA_ASTC_10x5_KHR
QOpenGLTexture::RGBA_ASTC_10x60x93B9Equivalent to GL_COMPRESSED_RGBA_ASTC_10x6_KHR
QOpenGLTexture::RGBA_ASTC_10x80x93BAEquivalent to GL_COMPRESSED_RGBA_ASTC_10x8_KHR
QOpenGLTexture::RGBA_ASTC_10x100x93BBEquivalent to GL_COMPRESSED_RGBA_ASTC_10x10_KHR
QOpenGLTexture::RGBA_ASTC_12x100x93BCEquivalent to GL_COMPRESSED_RGBA_ASTC_12x10_KHR
QOpenGLTexture::RGBA_ASTC_12x120x93BDEquivalent to GL_COMPRESSED_RGBA_ASTC_12x12_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_4x40x93D0Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_5x40x93D1Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_5x50x93D2Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_6x50x93D3Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_6x60x93D4Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_8x50x93D5Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_8x60x93D6Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_8x80x93D7Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_10x50x93D8Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_10x60x93D9Equivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_10x80x93DAEquivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_10x100x93DBEquivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_12x100x93DCEquivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR
QOpenGLTexture::SRGB8_Alpha8_ASTC_12x120x93DDEquivalent to GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR
QOpenGLTexture::SRGB80x8C41Equivalent to GL_SRGB8
QOpenGLTexture::SRGB8_Alpha80x8C43Equivalent to GL_SRGB8_ALPHA8
QOpenGLTexture::SRGB_DXT10x8C4CEquivalent to GL_COMPRESSED_SRGB_S3TC_DXT1_EXT
QOpenGLTexture::SRGB_Alpha_DXT10x8C4DEquivalent to GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT
QOpenGLTexture::SRGB_Alpha_DXT30x8C4EEquivalent to GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT
QOpenGLTexture::SRGB_Alpha_DXT50x8C4FEquivalent to GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT
QOpenGLTexture::SRGB_BP_UNorm0x8E8DEquivalent to GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB
QOpenGLTexture::DepthFormat0x1902Equivalent to GL_DEPTH_COMPONENT (only OpenGL ES 3 or ES 2 with OES_depth_texture)
QOpenGLTexture::AlphaFormat0x1906Equivalent to GL_ALPHA (OpenGL ES 2 only)
QOpenGLTexture::RGBFormat0x1907Equivalent to GL_RGB (OpenGL ES 2 only)
QOpenGLTexture::RGBAFormat0x1908Equivalent to GL_RGBA (OpenGL ES 2 only)
QOpenGLTexture::LuminanceFormat0x1909Equivalent to GL_LUMINANCE (OpenGL ES 2 only)
QOpenGLTexture::LuminanceAlphaFormat0x190AEquivalent to GL_LUMINANCE_ALPHA (OpenGL ES 2 only)

enum QOpenGLTexture::TextureUnitReset

This enum defines options ot control texture unit activation.

ConstantValueDescription
QOpenGLTexture::ResetTextureUnit0The previous active texture unit will be reset
QOpenGLTexture::DontResetTextureUnit1The previous active texture unit will not be rest

enum QOpenGLTexture::WrapMode

This enum defines the possible texture coordinate wrapping modes.

ConstantValueDescription
QOpenGLTexture::Repeat0x2901Texture coordinate is repeated. Equivalent to GL_REPEAT
QOpenGLTexture::MirroredRepeat0x8370Texture coordinate is reflected about 0 and 1. Equivalent to GL_MIRRORED_REPEAT
QOpenGLTexture::ClampToEdge0x812FClamps the texture coordinates to [0,1]. Equivalent to GL_CLAMP_TO_EDGE
QOpenGLTexture::ClampToBorder0x812DAs for ClampToEdge but also blends samples at 0 and 1 with a fixed border color. Equivalent to GL_CLAMP_TO_BORDER