Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QQuick3DCubeMapTexture Class Reference

#include <qquick3dcubemaptexture_p.h>

+ Inheritance diagram for QQuick3DCubeMapTexture:
+ Collaboration diagram for QQuick3DCubeMapTexture:

Public Member Functions

 QQuick3DCubeMapTexture (QQuick3DObject *parent=nullptr)
 
 ~QQuick3DCubeMapTexture () override
 
- Public Member Functions inherited from QQuick3DTexture
 QQuick3DTexture (QQuick3DObject *parent=nullptr)
 \qmltype Texture \inherits Object3D \inqmlmodule QtQuick3D
 
 ~QQuick3DTexture () override
 
QUrl source () const
 \qmlproperty url QtQuick3D::Texture::source
 
QQuickItemsourceItem () const
 \qmlproperty Item QtQuick3D::Texture::sourceItem
 
float scaleU () const
 \qmlproperty float QtQuick3D::Texture::scaleU
 
float scaleV () const
 \qmlproperty float QtQuick3D::Texture::scaleV
 
MappingMode mappingMode () const
 \qmlproperty enumeration QtQuick3D::Texture::mappingMode
 
TilingMode horizontalTiling () const
 \qmlproperty enumeration QtQuick3D::Texture::tilingModeHorizontal
 
TilingMode verticalTiling () const
 \qmlproperty enumeration QtQuick3D::Texture::tilingModeVertical
 
 Q_REVISION (6, 7) TilingMode depthTiling() const
 
float rotationUV () const
 \qmlproperty float QtQuick3D::Texture::rotationUV
 
float positionU () const
 \qmlproperty float QtQuick3D::Texture::positionU
 
float positionV () const
 \qmlproperty float QtQuick3D::Texture::positionV
 
float pivotU () const
 \qmlproperty float QtQuick3D::Texture::pivotU
 
float pivotV () const
 \qmlproperty float QtQuick3D::Texture::pivotV
 
bool flipU () const
 \qmlproperty bool QtQuick3D::Texture::flipU
 
bool flipV () const
 \qmlproperty bool QtQuick3D::Texture::flipV
 
int indexUV () const
 \qmlproperty int QtQuick3D::Texture::indexUV
 
Filter magFilter () const
 \qmlproperty enumeration QtQuick3D::Texture::magFilter
 
Filter minFilter () const
 \qmlproperty enumeration QtQuick3D::Texture::minFilter
 
Filter mipFilter () const
 \qmlproperty enumeration QtQuick3D::Texture::mipFilter
 
QQuick3DTextureDatatextureData () const
 \qmlproperty TextureData QtQuick3D::Texture::textureData
 
bool generateMipmaps () const
 \qmlproperty bool QtQuick3D::Texture::generateMipmaps
 
bool autoOrientation () const
 \qmlproperty bool QtQuick3D::Texture::autoOrientation
 
QSSGRenderImagegetRenderImage ()
 
 Q_REVISION (6, 7) QQuick3DRenderExtension *textureProvider() const
 
 Q_REVISION (6, 7) void setTextureProvider(QQuick3DRenderExtension *newRenderTexture)
 
bool extensionDirty () const
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
virtual bool event (QEvent *event)
 This virtual function receives events to an object and should return true if the event e was recognized and processed.
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 
- Public Member Functions inherited from QQmlParserStatus
 QQmlParserStatus ()
 
virtual ~QQmlParserStatus ()
 
- Public Member Functions inherited from QQuickItemChangeListener
virtual ~QQuickItemChangeListener ()
 
virtual void itemSiblingOrderChanged (QQuickItem *)
 
virtual void itemVisibilityChanged (QQuickItem *)
 
virtual void itemEnabledChanged (QQuickItem *)
 
virtual void itemOpacityChanged (QQuickItem *)
 
virtual void itemDestroyed (QQuickItem *)
 
virtual void itemChildAdded (QQuickItem *, QQuickItem *)
 
virtual void itemChildRemoved (QQuickItem *, QQuickItem *)
 
virtual void itemParentChanged (QQuickItem *, QQuickItem *)
 
virtual void itemRotationChanged (QQuickItem *)
 
virtual void itemImplicitWidthChanged (QQuickItem *)
 
virtual void itemImplicitHeightChanged (QQuickItem *)
 
virtual void itemFocusChanged (QQuickItem *, Qt::FocusReason)
 
virtual QQuickAnchorsPrivateanchorPrivate ()
 

Additional Inherited Members

- Public Types inherited from QQuick3DTexture
enum  MappingMode { UV = 0 , Environment = 1 , LightProbe = 2 }
 
enum  TilingMode { ClampToEdge = 1 , MirroredRepeat , Repeat }
 
enum  Filter { None = 0 , Nearest , Linear }
 
- Public Slots inherited from QQuick3DTexture
void setSource (const QUrl &source)
 
void setSourceItem (QQuickItem *sourceItem)
 
void setScaleU (float scaleU)
 
void setScaleV (float scaleV)
 
void setMappingMode (QQuick3DTexture::MappingMode mappingMode)
 
void setHorizontalTiling (QQuick3DTexture::TilingMode tilingModeHorizontal)
 
void setVerticalTiling (QQuick3DTexture::TilingMode tilingModeVertical)
 
Q_REVISION(6, 7) void setDepthTiling(QQuick3DTexture void setRotationUV (float rotationUV)
 
void setPositionU (float positionU)
 
void setPositionV (float positionV)
 
void setPivotU (float pivotU)
 
void setPivotV (float pivotV)
 
void setFlipU (bool flipU)
 
void setFlipV (bool flipV)
 
void setIndexUV (int indexUV)
 
void setMagFilter (QQuick3DTexture::Filter magFilter)
 
void setMinFilter (QQuick3DTexture::Filter minFilter)
 
void setMipFilter (QQuick3DTexture::Filter mipFilter)
 
void setTextureData (QQuick3DTextureData *textureData)
 
void setGenerateMipmaps (bool generateMipmaps)
 
void setAutoOrientation (bool autoOrientation)
 
- Public Slots inherited from QQuick3DObject
void update ()
 
void setParentItem (QQuick3DObject *parentItem)
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 
- Signals inherited from QQuick3DTexture
void sourceChanged ()
 
void sourceItemChanged ()
 
void scaleUChanged ()
 
void scaleVChanged ()
 
void mappingModeChanged ()
 
void horizontalTilingChanged ()
 
void verticalTilingChanged ()
 
 Q_REVISION (6, 7) void depthTilingChanged()
 
void rotationUVChanged ()
 
void positionUChanged ()
 
void positionVChanged ()
 
void pivotUChanged ()
 
void pivotVChanged ()
 
void flipUChanged ()
 
void flipVChanged ()
 
void indexUVChanged ()
 
void magFilterChanged ()
 
void minFilterChanged ()
 
void mipFilterChanged ()
 
void textureDataChanged ()
 
void generateMipmapsChanged ()
 
void autoOrientationChanged ()
 
 Q_REVISION (6, 7) void textureProviderChanged()
 
- Signals inherited from QQuick3DObject
void parentChanged ()
 
void childrenChanged ()
 
void stateChanged ()
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Protected Member Functions inherited from QQuick3DTexture
QSSGRenderGraphObjectupdateSpatialNode (QSSGRenderGraphObject *node) override
 
void markAllDirty () override
 
void itemChange (ItemChange change, const ItemChangeData &value) override
 
void itemGeometryChanged (QQuickItem *item, QQuickGeometryChange change, const QRectF &geometry) override
 
 QQuick3DTexture (QQuick3DObjectPrivate &dd, QQuick3DObject *parent=nullptr)
 
- Protected Member Functions inherited from QQuick3DObject
 QQuick3DObject (QQuick3DObjectPrivate &dd, QQuick3DObject *parent=nullptr)
 
void classBegin () override
 Invoked after class creation, but before any properties have been set.
 
void componentComplete () override
 Invoked after the root component that caused this instantiation has completed construction.
 
bool isComponentComplete () const
 
virtual void preSync ()
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Properties inherited from QQuick3DTexture
QUrl source
 
QQuickItemsourceItem
 
QQuick3DTextureDatatextureData
 
QQuick3DRenderExtensiontextureProvider
 \qmlproperty RenderExtension QtQuick3D::Texture::textureProvider
 
float scaleU
 
float scaleV
 
MappingMode mappingMode
 
TilingMode tilingModeHorizontal
 
TilingMode tilingModeVertical
 
TilingMode tilingModeDepth
 
float rotationUV
 
float positionU
 
float positionV
 
float pivotU
 
float pivotV
 
bool flipU
 
bool flipV
 
int indexUV
 
Filter magFilter
 
Filter minFilter
 
Filter mipFilter
 
bool generateMipmaps
 
bool autoOrientation
 
- Properties inherited from QQuick3DObject
QQuick3DObjectparent
 \qmlproperty Object3D QtQuick3D::Object3D::parent This property holds the parent of the Object3D in a 3D scene.
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Detailed Description

Definition at line 22 of file qquick3dcubemaptexture_p.h.

Constructor & Destructor Documentation

◆ QQuick3DCubeMapTexture()

QT_BEGIN_NAMESPACE QQuick3DCubeMapTexture::QQuick3DCubeMapTexture ( QQuick3DObject * parent = nullptr)
explicit
\qmltype CubeMapTexture
\inherits Texture
\inqmlmodule QtQuick3D
\brief Defines a cube map texture for use in 3D scenes.

CubeMapTexture is a Texture that represents a cube map texture. A cube map
texture has 6 faces (X+, X-, Y+, Y-, Z+, Z-), where each face is an
individual 2D image. CubeMapTexture allows \l{CustomMaterial}{custom
materials} and \l{Effect}{post-processing effects} to work with cube map
textures in their shaders. A cube map can also be used to define the scene
environment's \l{SceneEnvironment::skyBoxCubeMap}{skybox}.

\qml
CustomMaterial {
    property TextureInput customTexture: TextureInput {
        texture: CubeMapTexture {
            source: "cubemap.ktx"
        }
    }
    fragmentShader: "shader.frag"
}
\endqml

Here shader.frag can be implemented assuming \c customTexture is sampler
uniform with the GLSL type a \c samplerCube. This means that the
\c{texture()} GLSL function takes a \c vec3 as the texture coordinate for
that sampler. If we used \l Texture, the type would have been \c sampler2D.

\badcode
void MAIN()
{
    vec4 c = texture(customTexture, NORMAL);
    BASE_COLOR = vec4(c.rgb, 1.0);
}
\endcode

Sourcing a Texture from a container with a cubemap only loads face 0 (X+)
and results in a 2D texture. Whereas sourcing a CubeMapTexture from the
same asset loads all 6 faces and results in a cubemap texture.

CubeMapTexture inherits all its properties from Texture. The important
difference is that \l {Texture::}{source} must refer to a image file
containing a cubemap, or to a list of image files. In practice a single
file means a \l{https://www.khronos.org/ktx/}{KTX} container containing 6
face images.

Sourcing a CubeMapTexture from 6 individual images can be done in two
different ways. Either as a semicolon-separated list of file names in
X+, X-, Y+, Y-, Z+, Z- order:
\qml
CubeMapTexture {
    source: "maps/right.jpg;maps/left.jpg;maps/top.jpg;maps/bottom.jpg;maps/front.jpg;maps/back.jpg"
}
\endqml
or as a string containing a "%p" placeholder, where "%p" will be replaced by the strings
"posx", "negx", "posy", "negy", "posz", and "negz" to generate the six filenames:
\qml
CubeMapTexture {
    source: "maps/sky_%p.png"

equivalent to: source: "maps/sky_posx.png;maps/sky_negx.png;maps/sky_posy.png;maps/sky_negy.png;maps/sky_posz.png;maps/sky_negz.png" } \endqml

Note
Sourcing image data via other means, such as \l {Texture::}{sourceItem} or \l {Texture::}{textureData} is not supported for CubeMapTexture at the moment.
See also
Texture, CustomMaterial, Effect

Definition at line 81 of file qquick3dcubemaptexture.cpp.

◆ ~QQuick3DCubeMapTexture()

QQuick3DCubeMapTexture::~QQuick3DCubeMapTexture ( )
override

Definition at line 86 of file qquick3dcubemaptexture.cpp.


The documentation for this class was generated from the following files: