QTextureImage Class

class Qt3DRender::QTextureImage

Encapsulates the necessary information to create an OpenGL texture image from an image source. More...

Header: #include <QTextureImage>
qmake: QT += 3drender
Since: Qt 5.5
Instantiated By: TextureImage
Inherits: Qt3DRender::QAbstractTextureImage

This class was introduced in Qt 5.5.

Public Types

enum Status { None, Loading, Ready, Error }

Properties

Public Functions

bool isMirrored() const
QUrl source() const
Qt3DRender::QTextureImage::Status status() const

Public Slots

void setMirrored(bool mirrored)
void setSource(const QUrl &source)

Signals

void mirroredChanged(bool mirrored)
void sourceChanged(const QUrl &source)
void statusChanged(Qt3DRender::QTextureImage::Status status)

Detailed Description

It contains the necessary information mipmap level, layer, cube face and source URL to load at the proper place data into an OpenGL texture.

Member Type Documentation

enum QTextureImage::Status

This enumeration specifies the status values for texture image loading.

ConstantValueDescription
Qt3DRender::QTextureImage::None0The texture image loading has not been started yet.
Qt3DRender::QTextureImage::Loading1The texture image loading has started, but not finised.
Qt3DRender::QTextureImage::Ready2The texture image loading has finished.
Qt3DRender::QTextureImage::Error3The texture image loading confronted an error.

Property Documentation

mirrored : bool

This property specifies whether the image should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using GPU compressed texture formats.

Warning: This property results in a performance price payed at runtime when loading uncompressed or CPU compressed image formats such as PNG. To avoid this performance price it is better to set this property to false and load texture assets that have been pre-mirrored.

Note: OpenGL specifies the origin of texture coordinates from the lower left hand corner whereas DirectX uses the the upper left hand corner.

Note: When using cube map texture you'll probably want mirroring disabled as the cube map sampler takes a direction rather than regular texture coordinates.

Access functions:

bool isMirrored() const
void setMirrored(bool mirrored)

Notifier signal:

void mirroredChanged(bool mirrored)

source : QUrl

This property holds the source url from which data for the texture image will be loaded.

Access functions:

QUrl source() const
void setSource(const QUrl &source)

Notifier signal:

void sourceChanged(const QUrl &source)

status : const Status

This property holds the status of the texture image loading.

Access functions:

Qt3DRender::QTextureImage::Status status() const

Notifier signal:

void statusChanged(Qt3DRender::QTextureImage::Status status)