![]() |
Qt 6.x
The Qt SDK
|
#include <qquick3dcustommaterial_p.h>
Inheritance diagram for QQuick3DCustomMaterial:
Collaboration diagram for QQuick3DCustomMaterial:Public Types | |
| enum class | ShadingMode { Unshaded , Shaded } |
| enum class | BlendMode { NoBlend , Zero , One , SrcColor , OneMinusSrcColor , DstColor , OneMinusDstColor , SrcAlpha , OneMinusSrcAlpha , DstAlpha , OneMinusDstAlpha , ConstantColor , OneMinusConstantColor , ConstantAlpha , OneMinusConstantAlpha , SrcAlphaSaturate } |
Public Types inherited from QQuick3DMaterial | |
| enum | CullMode { BackFaceCulling = 1 , FrontFaceCulling = 2 , NoCulling = 3 } |
| enum | TextureChannelMapping { R = 0 , G , B , A } |
| enum | DepthDrawMode { OpaqueOnlyDepthDraw = 0 , AlwaysDepthDraw , NeverDepthDraw , OpaquePrePassDepthDraw } |
Public Slots | |
| void | setShadingMode (QQuick3DCustomMaterial::ShadingMode mode) |
| void | setVertexShader (const QUrl &url) |
| void | setFragmentShader (const QUrl &url) |
| void | setSrcBlend (QQuick3DCustomMaterial::BlendMode mode) |
| void | setDstBlend (QQuick3DCustomMaterial::BlendMode mode) |
| void | setAlwaysDirty (bool alwaysDirty) |
| void | setLineWidth (float width) |
Public Slots inherited from QQuick3DMaterial | |
| void | setLightProbe (QQuick3DTexture *lightProbe) |
| void | setCullMode (QQuick3DMaterial::CullMode cullMode) |
| void | setDepthDrawMode (QQuick3DMaterial::DepthDrawMode depthDrawMode) |
Public Slots inherited from QQuick3DObject | |
| void | update () |
| void | setParentItem (QQuick3DObject *parentItem) |
Public Slots inherited from QObject | |
| void | deleteLater () |
| \threadsafe | |
Signals | |
| void | shadingModeChanged () |
| void | vertexShaderChanged () |
| void | fragmentShaderChanged () |
| void | srcBlendChanged () |
| void | dstBlendChanged () |
| void | alwaysDirtyChanged () |
| void | lineWidthChanged () |
Signals inherited from QQuick3DMaterial | |
| void | lightProbeChanged (QQuick3DTexture *lightProbe) |
| void | cullModeChanged (QQuick3DMaterial::CullMode cullMode) |
| void | depthDrawModeChanged (QQuick3DMaterial::DepthDrawMode depthDrawMode) |
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. | |
Public Member Functions | |
| QQuick3DCustomMaterial (QQuick3DObject *parent=nullptr) | |
| ~QQuick3DCustomMaterial () override | |
| ShadingMode | shadingMode () const |
| QUrl | vertexShader () const |
| QUrl | fragmentShader () const |
| BlendMode | srcBlend () const |
| BlendMode | dstBlend () const |
| bool | alwaysDirty () const |
| float | lineWidth () const |
Public Member Functions inherited from QQuick3DMaterial | |
| ~QQuick3DMaterial () override | |
| QQuick3DTexture * | lightProbe () const |
| CullMode | cullMode () const |
| DepthDrawMode | depthDrawMode () 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< QString > | bindableObjectName () |
| 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). | |
| QThread * | thread () const |
| Returns the thread in which the object lives. | |
| void | moveToThread (QThread *thread) |
| Changes the thread affinity for this object and its children. | |
| 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::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
| void | killTimer (int id) |
| Kills the timer with timer identifier, id. | |
| template<typename T > | |
| T | findChild (const QString &aName=QString(), 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 (const QString &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 > | |
| 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 QObjectList & | children () 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< QByteArray > | dynamicPropertyNames () const |
| QBindingStorage * | bindingStorage () |
| const QBindingStorage * | bindingStorage () const |
| QObject * | parent () 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 () |
| virtual void | classBegin ()=0 |
| Invoked after class creation, but before any properties have been set. | |
| virtual void | componentComplete ()=0 |
| Invoked after the root component that caused this instantiation has completed construction. | |
Protected Types | |
| enum | Dirty : quint32 { TextureDirty = 0x1 , PropertyDirty = 0x2 , ShaderSettingsDirty = 0x4 , DynamicPropertiesDirty = 0x8 , AllDirty = std::numeric_limits<quint32>::max() ^ DynamicPropertiesDirty } |
Protected Member Functions | |
| QSSGRenderGraphObject * | updateSpatialNode (QSSGRenderGraphObject *node) override |
| void | itemChange (ItemChange, const ItemChangeData &) override |
| void | markAllDirty () override |
Protected Member Functions inherited from QQuick3DMaterial | |
| QQuick3DMaterial (QQuick3DObjectPrivate &dd, QQuick3DObject *parent=nullptr) | |
| \qmltype Material \inherits Object3D \inqmlmodule QtQuick3D | |
| QSSGRenderGraphObject * | updateSpatialNode (QSSGRenderGraphObject *node) override |
| void | itemChange (ItemChange, const ItemChangeData &) override |
Protected Member Functions inherited from QQuick3DObject | |
| virtual QSSGRenderGraphObject * | updateSpatialNode (QSSGRenderGraphObject *node) |
| virtual void | markAllDirty () |
| virtual void | itemChange (ItemChange, const ItemChangeData &) |
| 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 | |
| QObject * | sender () 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) | |
Static Protected Member Functions | |
| static void | markDirty (QQuick3DCustomMaterial &that, QQuick3DCustomMaterial::Dirty type) |
Properties | |
| ShadingMode | shadingMode |
| QUrl | fragmentShader |
| QUrl | vertexShader |
| BlendMode | sourceBlend |
| BlendMode | destinationBlend |
| bool | alwaysDirty |
| float | lineWidth |
Properties inherited from QQuick3DMaterial | |
| QQuick3DTexture * | lightProbe |
| CullMode | cullMode |
| DepthDrawMode | depthDrawMode |
Properties inherited from QQuick3DObject | |
| QQuick3DObject * | parent |
| \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 | |
Friends | |
| class | QQuick3DShaderUtilsTextureInput |
| class | QQuick3DViewport |
Additional Inherited Members | |
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 Attributes inherited from QObject | |
| QScopedPointer< QObjectData > | d_ptr |
Related Symbols inherited from QObject | |
| template< class T > T | qobject_cast (const QObject *object) |
| Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
| template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
| template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
| QObjectList | |
| \macro Q_CLASSINFO(Name, Value) | |
Definition at line 27 of file qquick3dcustommaterial_p.h.
|
strong |
Definition at line 48 of file qquick3dcustommaterial_p.h.
|
protected |
| Enumerator | |
|---|---|
| TextureDirty | |
| PropertyDirty | |
| ShaderSettingsDirty | |
| DynamicPropertiesDirty | |
| AllDirty | |
Definition at line 99 of file qquick3dcustommaterial_p.h.
|
strong |
| Enumerator | |
|---|---|
| Unshaded | |
| Shaded | |
Definition at line 41 of file qquick3dcustommaterial_p.h.
|
explicit |
Definition at line 1302 of file qquick3dcustommaterial.cpp.
|
override |
Definition at line 1307 of file qquick3dcustommaterial.cpp.
| bool QQuick3DCustomMaterial::alwaysDirty | ( | ) | const |
Definition at line 1412 of file qquick3dcustommaterial.cpp.
|
signal |
| QQuick3DCustomMaterial::BlendMode QQuick3DCustomMaterial::dstBlend | ( | ) | const |
Definition at line 1324 of file qquick3dcustommaterial.cpp.
|
signal |
| QUrl QQuick3DCustomMaterial::fragmentShader | ( | ) | const |
Definition at line 1369 of file qquick3dcustommaterial.cpp.
|
signal |
|
overrideprotectedvirtual |
Reimplemented from QQuick3DObject.
Definition at line 1729 of file qquick3dcustommaterial.cpp.
References QQuick3DObjectPrivate::derefSceneManager(), it, QQuick3DMaterial::itemChange(), and QQuick3DObjectPrivate::refSceneManager().
Here is the call graph for this function:| float QQuick3DCustomMaterial::lineWidth | ( | ) | const |
Definition at line 1384 of file qquick3dcustommaterial.cpp.
|
signal |
|
overrideprotectedvirtual |
Reimplemented from QQuick3DObject.
Definition at line 1398 of file qquick3dcustommaterial.cpp.
References AllDirty, and QQuick3DObject::markAllDirty().
Referenced by updateSpatialNode().
Here is the call graph for this function:
Here is the caller graph for this function:
|
staticprotected |
Definition at line 1404 of file qquick3dcustommaterial.cpp.
References QQuick3DObject::update().
Referenced by setFragmentShader(), setShadingMode(), and setVertexShader().
Here is the call graph for this function:
Here is the caller graph for this function:
|
slot |
Definition at line 1417 of file qquick3dcustommaterial.cpp.
References alwaysDirty, alwaysDirtyChanged(), emit, and QQuick3DObject::update().
Here is the call graph for this function:
|
slot |
Definition at line 1329 of file qquick3dcustommaterial.cpp.
References dstBlendChanged(), emit, and QQuick3DObject::update().
Here is the call graph for this function:Definition at line 1374 of file qquick3dcustommaterial.cpp.
References emit, fragmentShaderChanged(), markDirty(), ShaderSettingsDirty, and url.
Here is the call graph for this function:
|
slot |
Definition at line 1389 of file qquick3dcustommaterial.cpp.
References emit, lineWidthChanged(), qFuzzyCompare(), and QQuick3DObject::update().
Here is the call graph for this function:
|
slot |
Definition at line 1344 of file qquick3dcustommaterial.cpp.
References emit, markDirty(), ShaderSettingsDirty, and shadingModeChanged().
Here is the call graph for this function:
|
slot |
Definition at line 1314 of file qquick3dcustommaterial.cpp.
References emit, srcBlendChanged(), and QQuick3DObject::update().
Here is the call graph for this function:Definition at line 1359 of file qquick3dcustommaterial.cpp.
References emit, markDirty(), ShaderSettingsDirty, url, and vertexShaderChanged().
Here is the call graph for this function:| QQuick3DCustomMaterial::ShadingMode QQuick3DCustomMaterial::shadingMode | ( | ) | const |
Definition at line 1339 of file qquick3dcustommaterial.cpp.
|
signal |
| QQuick3DCustomMaterial::BlendMode QQuick3DCustomMaterial::srcBlend | ( | ) | const |
Definition at line 1309 of file qquick3dcustommaterial.cpp.
|
signal |
|
overrideprotectedvirtual |
Reimplemented from QQuick3DObject.
Definition at line 1453 of file qquick3dcustommaterial.cpp.
References QByteArray::append(), QVarLengthArray< T, Prealloc >::append(), QMetaObject::className(), QList< T >::clear(), QObject::connect(), context, QQuick3DTextureData::depth(), DynamicPropertiesDirty, QObject::dynamicPropertyNames(), QQuick3DShaderUtilsTextureInput::enabledChanged(), QByteArray::first(), QSSGCustomShaderMetaData::flags, QSSGRenderCustomMaterial::Fragment, QSSGShaderCache::Fragment, QQuick3DObjectPrivate::get(), QCryptographicHash::hash(), i, QMetaType::id(), QSSGRenderCustomMaterial::incompleteBuildTimeObject, QUrl::isEmpty(), QByteArray::isEmpty(), QMetaMethod::isValid(), QSSGRenderCustomMaterial::m_customShaderPresence, QSSGRenderCustomMaterial::m_properties, QSSGRenderCustomMaterial::m_renderFlags, QSSGRenderCustomMaterial::m_shaderPathKey, QSSGRenderCustomMaterial::m_shadingMode, QSSGRenderCustomMaterial::m_textureProperties, QSSGRenderCustomMaterial::m_usesSharedVariables, markAllDirty(), metaObject(), QVariant::metaType(), QSSGRenderCustomMaterial::TextureProperty::name, QSSGRenderCustomMaterial::OverridesPosition, QSSGCustomShaderMetaData::OverridesPosition, QSSGShaderCustomMaterialAdapter::prepareCustomShader(), property, QMetaObject::propertyOffset(), QList< T >::push_back(), Q_UNLIKELY, QByteArrayLiteral, qmlContext(), qstrcmp(), QMetaType::QVariant, qWarning, QQuick3DWindowAttachment::rci(), QSSGShaderUtils::resolveShader(), QQuick3DObjectPrivate::sceneManager, setCustomMaterialFlagsFromShader(), QCryptographicHash::Sha1, QSSGRenderCustomMaterial::TextureProperty::shaderDataType, ShaderSettingsDirty, QMetaObject::superClass(), QSSGRenderCustomMaterial::TextureProperty::texInput, Texture, QQuick3DShaderUtilsTextureInput::textureChanged(), QQuick3DTexture::textureData, Unknown, QMetaType::User, QSSGCustomShaderMetaData::UsesSharedVars, QVariant::value(), QSSGRenderCustomMaterial::Vertex, QSSGShaderCache::Vertex, and QQuick3DSceneManager::wattached.
Here is the call graph for this function:| QUrl QQuick3DCustomMaterial::vertexShader | ( | ) | const |
Definition at line 1354 of file qquick3dcustommaterial.cpp.
|
signal |
|
friend |
Definition at line 117 of file qquick3dcustommaterial_p.h.
|
friend |
Definition at line 118 of file qquick3dcustommaterial_p.h.
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.
Referenced by setAlwaysDirty().
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.
|
readwrite |
Definition at line 133 of file qquick3dcustommaterial_p.h.