class QAbstractTexture

A base class to be used to provide textures. More

Inheritance diagram of PySide6.Qt3DRender.Qt3DRender.QAbstractTexture

Inherited by: QTextureRectangle, QTextureLoader, QTextureCubeMapArray, QTextureCubeMap, QTextureBuffer, QTexture3D, QTexture2DMultisampleArray, QTexture2DMultisample, QTexture2DArray, QTexture2D, QTexture1DArray, QTexture1D, QSharedGLTexture

Synopsis

Properties

Methods

Slots

Signals

Note

This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE

Detailed Description

The QAbstractTexture class shouldn’t be used directly but rather through one of its subclasses. Each subclass implements a given texture target (2D, 2DArray, 3D, CubeMap …) Each subclass provides a set of functors for each layer, cube map face and mipmap level. In turn the backend uses those functor to properly fill a corresponding OpenGL texture with data. It is expected the functor does as minimal processing as possible so as not to slow down textures generation and upload. If the content of a texture is the result of a slow procedural generation process, it is recommended not to implement this directly in a functor.

All textures are unique. If you instantiate twice the same texture this will create 2 identical textures on the GPU, no sharing will take place.

class Status

Contains the status of the texture provider.

Constant

Description

Qt3DRender.QAbstractTexture.None

Qt3DRender.QAbstractTexture.Loading

Qt3DRender.QAbstractTexture.Ready

Qt3DRender.QAbstractTexture.Error

class Target

Constant

Description

Qt3DRender.QAbstractTexture.TargetAutomatic

Target will be determined by the Qt3D engine

Qt3DRender.QAbstractTexture.Target1D

GL_TEXTURE_1D

Qt3DRender.QAbstractTexture.Target1DArray

GL_TEXTURE_1D_ARRAY

Qt3DRender.QAbstractTexture.Target2D

GL_TEXTURE_2D

Qt3DRender.QAbstractTexture.Target2DArray

GL_TEXTURE_2D_ARRAY

Qt3DRender.QAbstractTexture.Target3D

GL_TEXTURE_3D

Qt3DRender.QAbstractTexture.TargetCubeMap

GL_TEXTURE_CUBE_MAP

Qt3DRender.QAbstractTexture.TargetCubeMapArray

GL_TEXTURE_CUBE_MAP_ARRAY

Qt3DRender.QAbstractTexture.Target2DMultisample

GL_TEXTURE_2D_MULTISAMPLE

Qt3DRender.QAbstractTexture.Target2DMultisampleArray

GL_TEXTURE_2D_MULTISAMPLE_ARRAY

Qt3DRender.QAbstractTexture.TargetRectangle

GL_TEXTURE_RECTANGLE

Qt3DRender.QAbstractTexture.TargetBuffer

GL_TEXTURE_BUFFER

class TextureFormat

This list describes all possible texture formats

Constant

Description

Qt3DRender.QAbstractTexture.NoFormat

GL_NONE

Qt3DRender.QAbstractTexture.Automatic

automatically_determines_format

Qt3DRender.QAbstractTexture.R8_UNorm

GL_R8

Qt3DRender.QAbstractTexture.RG8_UNorm

GL_RG8

Qt3DRender.QAbstractTexture.RGB8_UNorm

GL_RGB8

Qt3DRender.QAbstractTexture.RGBA8_UNorm

GL_RGBA8

Qt3DRender.QAbstractTexture.R16_UNorm

GL_R16

Qt3DRender.QAbstractTexture.RG16_UNorm

GL_RG16

Qt3DRender.QAbstractTexture.RGB16_UNorm

GL_RGB16

Qt3DRender.QAbstractTexture.RGBA16_UNorm

GL_RGBA16

Qt3DRender.QAbstractTexture.R8_SNorm

GL_R8_SNORM

Qt3DRender.QAbstractTexture.RG8_SNorm

GL_RG8_SNORM

Qt3DRender.QAbstractTexture.RGB8_SNorm

GL_RGB8_SNORM

Qt3DRender.QAbstractTexture.RGBA8_SNorm

GL_RGBA8_SNORM

Qt3DRender.QAbstractTexture.R16_SNorm

GL_R16_SNORM

Qt3DRender.QAbstractTexture.RG16_SNorm

GL_RG16_SNORM

Qt3DRender.QAbstractTexture.RGB16_SNorm

GL_RGB16_SNORM

Qt3DRender.QAbstractTexture.RGBA16_SNorm

GL_RGBA16_SNORM

Qt3DRender.QAbstractTexture.R8U

GL_R8UI

Qt3DRender.QAbstractTexture.RG8U

GL_RG8UI

Qt3DRender.QAbstractTexture.RGB8U

GL_RGB8UI

Qt3DRender.QAbstractTexture.RGBA8U

GL_RGBA8UI

Qt3DRender.QAbstractTexture.R16U

GL_R16UI

Qt3DRender.QAbstractTexture.RG16U

GL_RG16UI

Qt3DRender.QAbstractTexture.RGB16U

GL_RGB16UI

Qt3DRender.QAbstractTexture.RGBA16U

GL_RGBA16UI

Qt3DRender.QAbstractTexture.R32U

GL_R32UI

Qt3DRender.QAbstractTexture.RG32U

GL_RG32UI

Qt3DRender.QAbstractTexture.RGB32U

GL_RGB32UI

Qt3DRender.QAbstractTexture.RGBA32U

GL_RGBA32UI

Qt3DRender.QAbstractTexture.R8I

GL_R8I

Qt3DRender.QAbstractTexture.RG8I

GL_RG8I

Qt3DRender.QAbstractTexture.RGB8I

GL_RGB8I

Qt3DRender.QAbstractTexture.RGBA8I

GL_RGBA8I

Qt3DRender.QAbstractTexture.R16I

GL_R16I

Qt3DRender.QAbstractTexture.RG16I

GL_RG16I

Qt3DRender.QAbstractTexture.RGB16I

GL_RGB16I

Qt3DRender.QAbstractTexture.RGBA16I

GL_RGBA16I

Qt3DRender.QAbstractTexture.R32I

GL_R32I

Qt3DRender.QAbstractTexture.RG32I

GL_RG32I

Qt3DRender.QAbstractTexture.RGB32I

GL_RGB32I

Qt3DRender.QAbstractTexture.RGBA32I

GL_RGBA32I

Qt3DRender.QAbstractTexture.R16F

GL_R16F

Qt3DRender.QAbstractTexture.RG16F

GL_RG16F

Qt3DRender.QAbstractTexture.RGB16F

GL_RGB16F

Qt3DRender.QAbstractTexture.RGBA16F

GL_RGBA16F

Qt3DRender.QAbstractTexture.R32F

GL_R32F

Qt3DRender.QAbstractTexture.RG32F

GL_RG32F

Qt3DRender.QAbstractTexture.RGB32F

GL_RGB32F

Qt3DRender.QAbstractTexture.RGBA32F

GL_RGBA32F

Qt3DRender.QAbstractTexture.RGB9E5

GL_RGB9_E5

Qt3DRender.QAbstractTexture.RG11B10F

GL_R11F_G11F_B10F

Qt3DRender.QAbstractTexture.RG3B2

GL_R3_G3_B2

Qt3DRender.QAbstractTexture.R5G6B5

GL_RGB565

Qt3DRender.QAbstractTexture.RGB5A1

GL_RGB5_A1

Qt3DRender.QAbstractTexture.RGBA4

GL_RGBA4

Qt3DRender.QAbstractTexture.RGB10A2

GL_RGB10_A2

Qt3DRender.QAbstractTexture.RGB10A2U

GL_RGB10_A2UI

Qt3DRender.QAbstractTexture.D16

GL_DEPTH_COMPONENT16

Qt3DRender.QAbstractTexture.D24

GL_DEPTH_COMPONENT24

Qt3DRender.QAbstractTexture.D24S8

GL_DEPTH24_STENCIL8

Qt3DRender.QAbstractTexture.D32

GL_DEPTH_COMPONENT32

Qt3DRender.QAbstractTexture.D32F

GL_DEPTH_COMPONENT32F

Qt3DRender.QAbstractTexture.D32FS8X24

GL_DEPTH32F_STENCIL8

Qt3DRender.QAbstractTexture.RGB_DXT1

GL_COMPRESSED_RGB_S3TC_DXT1_EXT

Qt3DRender.QAbstractTexture.RGBA_DXT1

GL_COMPRESSED_RGBA_S3TC_DXT1_EXT

Qt3DRender.QAbstractTexture.RGBA_DXT3

GL_COMPRESSED_RGBA_S3TC_DXT3_EXT

Qt3DRender.QAbstractTexture.RGBA_DXT5

GL_COMPRESSED_RGBA_S3TC_DXT5_EXT

Qt3DRender.QAbstractTexture.R_ATI1N_UNorm

GL_COMPRESSED_RED_RGTC1

Qt3DRender.QAbstractTexture.R_ATI1N_SNorm

GL_COMPRESSED_SIGNED_RED_RGTC1

Qt3DRender.QAbstractTexture.RG_ATI2N_UNorm

GL_COMPRESSED_RG_RGTC2

Qt3DRender.QAbstractTexture.RG_ATI2N_SNorm

GL_COMPRESSED_SIGNED_RG_RGTC2

Qt3DRender.QAbstractTexture.RGB_BP_UNSIGNED_FLOAT

GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB

Qt3DRender.QAbstractTexture.RGB_BP_SIGNED_FLOAT

GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB

Qt3DRender.QAbstractTexture.RGB_BP_UNorm

GL_COMPRESSED_RGBA_BPTC_UNORM_ARB

Qt3DRender.QAbstractTexture.R11_EAC_UNorm

GL_COMPRESSED_R11_EAC

Qt3DRender.QAbstractTexture.R11_EAC_SNorm

GL_COMPRESSED_SIGNED_R11_EAC

Qt3DRender.QAbstractTexture.RG11_EAC_UNorm

GL_COMPRESSED_RG11_EAC

Qt3DRender.QAbstractTexture.RG11_EAC_SNorm

GL_COMPRESSED_SIGNED_RG11_EAC

Qt3DRender.QAbstractTexture.RGB8_ETC2

GL_COMPRESSED_RGB8_ETC2

Qt3DRender.QAbstractTexture.SRGB8_ETC2

GL_COMPRESSED_SRGB8_ETC2

Qt3DRender.QAbstractTexture.RGB8_PunchThrough_Alpha1_ETC2

GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2

Qt3DRender.QAbstractTexture.SRGB8_PunchThrough_Alpha1_ETC2

GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2

Qt3DRender.QAbstractTexture.RGBA8_ETC2_EAC

GL_COMPRESSED_RGBA8_ETC2_EAC

Qt3DRender.QAbstractTexture.SRGB8_Alpha8_ETC2_EAC

GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC

Qt3DRender.QAbstractTexture.RGB8_ETC1

GL_ETC1_RGB8_OES

Qt3DRender.QAbstractTexture.SRGB8

GL_SRGB8

Qt3DRender.QAbstractTexture.SRGB8_Alpha8

GL_SRGB8_ALPHA8

Qt3DRender.QAbstractTexture.SRGB_DXT1

GL_COMPRESSED_SRGB_S3TC_DXT1_EXT

Qt3DRender.QAbstractTexture.SRGB_Alpha_DXT1

GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT

Qt3DRender.QAbstractTexture.SRGB_Alpha_DXT3

GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT

Qt3DRender.QAbstractTexture.SRGB_Alpha_DXT5

GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT

Qt3DRender.QAbstractTexture.SRGB_BP_UNorm

GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB

Qt3DRender.QAbstractTexture.DepthFormat

GL_DEPTH_COMPONENT

Qt3DRender.QAbstractTexture.AlphaFormat

GL_ALPHA

Qt3DRender.QAbstractTexture.RGBFormat

GL_RGB

Qt3DRender.QAbstractTexture.RGBAFormat

GL_RGBA

Qt3DRender.QAbstractTexture.LuminanceFormat

GL_LUMINANCE

Qt3DRender.QAbstractTexture.LuminanceAlphaFormat

0x190A

class Filter

Holds the filter type of the texture provider.

Constant

Description

Qt3DRender.QAbstractTexture.Nearest

GL_NEAREST

Qt3DRender.QAbstractTexture.Linear

GL_LINEAR

Qt3DRender.QAbstractTexture.NearestMipMapNearest

GL_NEAREST_MIPMAP_NEAREST

Qt3DRender.QAbstractTexture.NearestMipMapLinear

GL_NEAREST_MIPMAP_LINEAR

Qt3DRender.QAbstractTexture.LinearMipMapNearest

GL_LINEAR_MIPMAP_NEAREST

Qt3DRender.QAbstractTexture.LinearMipMapLinear

GL_LINEAR_MIPMAP_LINEAR

class CubeMapFace

This enum identifies the faces of a cube map texture

Constant

Description

Qt3DRender.QAbstractTexture.CubeMapPositiveX

Specify the positive X face of a cube map

Qt3DRender.QAbstractTexture.CubeMapNegativeX

Specify the negative X face of a cube map

Qt3DRender.QAbstractTexture.CubeMapPositiveY

Specify the positive Y face of a cube map

Qt3DRender.QAbstractTexture.CubeMapNegativeY

Specify the negative Y face of a cube map

Qt3DRender.QAbstractTexture.CubeMapPositiveZ

Specify the positive Z face of a cube map

Qt3DRender.QAbstractTexture.CubeMapNegativeZ

Specify the negative Z face of a cube map

Qt3DRender.QAbstractTexture.AllFaces

Specify all the faces of a cube map

Note

AllFaces should only be used when a behavior needs to be applied to all the faces of a cubemap. This is the case for example when using a cube map as a texture attachment. Using AllFaces in the attachment specfication would result in all faces being bound to the attachment point. On the other hand, if a specific face is specified, the attachment would only be using the specified face.

class ComparisonFunction
class ComparisonMode
class HandleType

Note

Properties can be used directly when from __feature__ import true_property is used or via accessor functions otherwise.

property comparisonFunctionᅟ: Qt3DRender.QAbstractTexture.ComparisonFunction

Holds the comparison function of the texture provider.

Access functions:
property comparisonModeᅟ: Qt3DRender.QAbstractTexture.ComparisonMode

Holds the comparison mode of the texture provider.

Access functions:
property depthᅟ: int

Holds the depth of the texture provider.

Access functions:
property formatᅟ: Qt3DRender.QAbstractTexture.TextureFormat

Holds the format of the texture provider.

Access functions:
property generateMipMapsᅟ: bool

Holds whether the texture provider should auto generate mipmaps.

Access functions:
property handleᅟ: object

Holds the current texture handle, if Qt 3D is using the OpenGL renderer, handle is a texture id integer.

Access functions:
property handleTypeᅟ: Qt3DRender.QAbstractTexture.HandleType

Holds the current texture handle type.

Access functions:
property heightᅟ: int

Holds the height of the texture provider.

Access functions:
property layersᅟ: int

Holds the maximum layer count of the texture provider. By default, the maximum layer count is 1.

Note

this has a meaning only for texture providers that have 3D or array target formats.

Access functions:
property magnificationFilterᅟ: Qt3DRender.QAbstractTexture.Filter

Holds the magnification filter of the texture provider.

Access functions:
property maximumAnisotropyᅟ: float

Holds the maximum anisotropy of the texture provider.

Access functions:
property minificationFilterᅟ: Qt3DRender.QAbstractTexture.Filter

Holds the minification filter of the texture provider.

Access functions:
property mipLevelsᅟ: int

Holds the mipmap levels of the texture provider.

Access functions:
property samplesᅟ: int

Holds the number of samples per texel for the texture provider. By default, the number of samples is 1.

Note

this has a meaning only for texture providers that have multisample formats.

Access functions:
property statusᅟ: Qt3DRender.QAbstractTexture.Status

Holds the current status of the texture provider.

Access functions:
property targetᅟ: Qt3DRender.QAbstractTexture.Target

Holds the target format of the texture provider.

Note

The target format can only be set once.

Access functions:
property widthᅟ: int

Holds the width of the texture provider.

Access functions:
property wrapModeᅟ: QTextureWrapMode

Holds the wrap mode of the texture provider.

Access functions:
__init__([parent=None])
Parameters:

parentQNode

The constructor creates a new QAbstractTexture instance with the specified parent.

__init__(target[, parent=None])
Parameters:
  • targetTarget

  • parentQNode

The constructor creates a new QAbstractTexture instance with the specified target and parent.

addTextureImage(textureImage)
Parameters:

textureImageQAbstractTextureImage

Adds a new Qt3DCore::QAbstractTextureImage textureImage to the texture provider.

Note

QAbstractTextureImage should never be shared between multiple QAbstractTexture instances.

comparisonFunction()
Return type:

ComparisonFunction

Returns the current comparison function.

See also

setComparisonFunction()

Getter of property comparisonFunctionᅟ .

comparisonFunctionChanged(comparisonFunction)
Parameters:

comparisonFunctionComparisonFunction

Notification signal of property comparisonFunctionᅟ .

comparisonMode()
Return type:

ComparisonMode

Returns the current comparison mode.

See also

setComparisonMode()

Getter of property comparisonModeᅟ .

comparisonModeChanged(comparisonMode)
Parameters:

comparisonModeComparisonMode

Notification signal of property comparisonModeᅟ .

depth()
Return type:

int

Returns the depth of the texture

See also

setDepth()

Getter of property depthᅟ .

depthChanged(depth)
Parameters:

depth – int

Notification signal of property depthᅟ .

format()
Return type:

TextureFormat

Returns the texture provider’s format.

See also

setFormat()

Getter of property formatᅟ .

formatChanged(format)
Parameters:

formatTextureFormat

Notification signal of property formatᅟ .

generateMipMaps()
Return type:

bool

See also

setGenerateMipMaps()

Getter of property generateMipMapsᅟ .

generateMipMapsChanged(generateMipMaps)
Parameters:

generateMipMaps – bool

Notification signal of property generateMipMapsᅟ .

handle()
Return type:

object

Returns the current texture handle, if Qt 3D is using the OpenGL renderer, handle is a texture id integer.

Getter of property handleᅟ .

handleChanged(handle)
Parameters:

handle – object

Notification signal of property handleᅟ .

handleType()
Return type:

HandleType

Returns the current texture handle type.

Getter of property handleTypeᅟ .

handleTypeChanged(handleType)
Parameters:

handleTypeHandleType

Notification signal of property handleTypeᅟ .

height()
Return type:

int

Returns the height of the texture

See also

setHeight()

Getter of property heightᅟ .

heightChanged(height)
Parameters:

height – int

Notification signal of property heightᅟ .

layers()
Return type:

int

Returns the maximum number of layers for the texture provider.

Note

this has a meaning only for texture providers that have 3D or array target formats.

See also

setLayers()

Getter of property layersᅟ .

layersChanged(layers)
Parameters:

layers – int

Notification signal of property layersᅟ .

magnificationFilter()
Return type:

Filter

See also

setMagnificationFilter()

Getter of property magnificationFilterᅟ .

magnificationFilterChanged(magnificationFilter)
Parameters:

magnificationFilterFilter

Notification signal of property magnificationFilterᅟ .

maximumAnisotropy()
Return type:

float

Returns the current maximum anisotropy

See also

setMaximumAnisotropy()

Getter of property maximumAnisotropyᅟ .

maximumAnisotropyChanged(maximumAnisotropy)
Parameters:

maximumAnisotropy – float

Notification signal of property maximumAnisotropyᅟ .

minificationFilter()
Return type:

Filter

See also

setMinificationFilter()

Getter of property minificationFilterᅟ .

minificationFilterChanged(minificationFilter)
Parameters:

minificationFilterFilter

Notification signal of property minificationFilterᅟ .

mipLevels()
Return type:

int

See also

setMipLevels()

Getter of property mipLevelsᅟ .

mipLevelsChanged(mipLevels)
Parameters:

mipLevels – int

Notification signal of property mipLevelsᅟ .

removeTextureImage(textureImage)
Parameters:

textureImageQAbstractTextureImage

Removes a Qt3DCore::QAbstractTextureImage textureImage from the texture provider.

samples()
Return type:

int

Returns the number of samples per texel for the texture provider.

Note

this has a meaning only for texture providers that have multisample formats.

See also

setSamples()

Getter of property samplesᅟ .

samplesChanged(samples)
Parameters:

samples – int

Notification signal of property samplesᅟ .

setComparisonFunction(function)
Parameters:

functionComparisonFunction

Set the comparison function to function.

See also

comparisonFunction()

Setter of property comparisonFunctionᅟ .

setComparisonMode(mode)
Parameters:

modeComparisonMode

Set the comparison mode to mode.

See also

comparisonMode()

Setter of property comparisonModeᅟ .

setDepth(depth)
Parameters:

depth – int

Set the depth of the texture to depth.

See also

depth()

Setter of property depthᅟ .

setFormat(format)
Parameters:

formatTextureFormat

Set the texture format to format.

See also

format()

Setter of property formatᅟ .

setGenerateMipMaps(gen)
Parameters:

gen – bool

Boolean parameter gen sets a flag indicating whether the texture provider should generate mipmaps or not.

See also

generateMipMaps()

Setter of property generateMipMapsᅟ .

setHandle(handle)
Parameters:

handle – object

setHandleType(type)
Parameters:

typeHandleType

setHeight(height)
Parameters:

height – int

Set the height to height.

See also

height()

Setter of property heightᅟ .

setLayers(layers)
Parameters:

layers – int

Set the maximum layer count to layers.

See also

layers()

Setter of property layersᅟ .

setMagnificationFilter(f)
Parameters:

fFilter

Set the magnification filter to f.

See also

magnificationFilter()

Setter of property magnificationFilterᅟ .

setMaximumAnisotropy(anisotropy)
Parameters:

anisotropy – float

Sets the maximum anisotropy to anisotropy.

See also

maximumAnisotropy()

Setter of property maximumAnisotropyᅟ .

setMinificationFilter(f)
Parameters:

fFilter

Set the minification filter to the specified value f.

See also

minificationFilter()

Setter of property minificationFilterᅟ .

setMipLevels(mipLevels)
Parameters:

mipLevels – int

See also

mipLevels()

Setter of property mipLevelsᅟ .

setSamples(samples)
Parameters:

samples – int

Set the number of samples per texel to samples.

See also

samples()

Setter of property samplesᅟ .

setSize(width[, height=1[, depth=1]])
Parameters:
  • width – int

  • height – int

  • depth – int

Sets the size of the texture provider to width w, height h and depth d.

setStatus(status)
Parameters:

statusStatus

Set the status of the texture provider to the specified status.

See also

status()

setWidth(width)
Parameters:

width – int

Set the width of the texture provider to width.

See also

width()

Setter of property widthᅟ .

setWrapMode(wrapMode)
Parameters:

wrapModeQTextureWrapMode

Set the wrapmode to the value specified in wrapMode.

See also

wrapMode()

status()
Return type:

Status

Returns the current status of the texture provider.

See also

setStatus()

Getter of property statusᅟ .

statusChanged(status)
Parameters:

statusStatus

Notification signal of property statusᅟ .

target()
Return type:

Target

Returns the target format of the texture provider.

Getter of property targetᅟ .

textureImages()
Return type:

.list of Qt3DRender.QAbstractTextureImage

Returns a list of pointers to QAbstractTextureImage objects contained in the texture provider.

updateData(update)
Parameters:

updateQTextureDataUpdate

Updates a sub region of the texture, defined by update, without having to change the data generator or rely on adding or removing texture images.

width()
Return type:

int

Returns the width of the texture

See also

setWidth()

Getter of property widthᅟ .

widthChanged(width)
Parameters:

width – int

Notification signal of property widthᅟ .

wrapMode()
Return type:

QTextureWrapMode

See also

setWrapMode()

Getter of property wrapModeᅟ .