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
QQuick3DBakedLightmap Class Reference

#include <qquick3dbakedlightmap_p.h>

+ Inheritance diagram for QQuick3DBakedLightmap:
+ Collaboration diagram for QQuick3DBakedLightmap:

Public Slots

void setEnabled (bool enabled)
 
void setKey (const QString &key)
 
void setLoadPrefix (const QString &loadPrefix)
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 

Signals

void changed ()
 
void enabledChanged ()
 
void keyChanged ()
 
void loadPrefixChanged ()
 
- 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

bool isEnabled () const
 \qmltype BakedLightmap \inherits Object \inqmlmodule QtQuick3D
 
QString key () const
 
QString loadPrefix () 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.
 

Properties

bool enabled
 
QString key
 
QString loadPrefix
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

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 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
 

Detailed Description

Definition at line 22 of file qquick3dbakedlightmap_p.h.

Member Function Documentation

◆ changed

void QQuick3DBakedLightmap::changed ( )
signal

Referenced by setEnabled(), setKey(), and setLoadPrefix().

+ Here is the caller graph for this function:

◆ enabledChanged

void QQuick3DBakedLightmap::enabledChanged ( )
signal

Referenced by setEnabled().

+ Here is the caller graph for this function:

◆ isEnabled()

QT_BEGIN_NAMESPACE bool QQuick3DBakedLightmap::isEnabled ( ) const

\qmltype BakedLightmap \inherits Object \inqmlmodule QtQuick3D

Specifies baked lightmap settings for a model.

Since
6.4

A BakedLightmap object can be used to enable:

\list

  • persistently storing the baked lightmap data - during baking, or
  • loading the previously generated and stored lightmaps - at run time. \endlist

A Model with \l{Model::usedInBakedLighting}{usedInBakedLighting} set to true is considered to be part of the raytraced scene when baking lightmaps, meaning the model's geometry and material contribute to direct and indirect lighting. This on its own does not however enable generating, including full calculation of bounced indirect lighting, and finally saving a lightmap for the model. To do that, the model also needs to be associated with an \l enabled BakedLightmap object with a unique key set.

When running in normal mode, the same BakedLightmap object indicates that the Model has lightmap data, and that the engine should attempt to load this data (based on the unique key) and use it when rendering.

For more information on how to bake lightmaps, see the \l Lightmapper documentation.

Note
As of Qt 6.4, lightmap baking is in an early technical preview state. Changes to features, quality, and API are likely happen in future releases.
See also
Lightmapper, Model::usedInBakedLighting

\qmlproperty bool BakedLightmap::enabled

When false, the lightmap generated for the model is not stored during lightmap baking, even though \l key is set to a non-empty value.

The default value is true.

\qmlproperty string BakedLightmap::key

When non-empty and \l enabled is true, the lightmap generated for the model is stored persistently during lightmap baking. The value should be a unique string that is fit to be included in the name of a file in the filesystem. No other Model in the scene must use the same key.

The default value is empty.

See also
loadPrefix
\qmlproperty string BakedLightmap::loadPrefix

When non-empty, the value is prepended as a path to the value of \l key
when loading the lightmap for the Model. This allows shipping the generated
lightmaps in different location than they were written to, for example as
embedded resources via the Qt resource system.

For example, the following enables lightmap generation for a static model,
using a unique key for identifying the lightmap data between baking and
real runs of the application. Once baking is performed, the generated file
can be listed in the application's CMake project as a resource under the
\c{/lightmaps} PREFIX, letting the build process pick up the file and
include it in the executable.

\qml
Model {
    source: "model.mesh"
    y: 10
    bakedLightmap: BakedLightmap {
        key: "model34156"
        loadPrefix: "qrc:/lightmaps"

will attempt to load from :/lightmaps/qlm_model34156.exr at run time } } \endqml

The default value is empty.

See also
key

Definition at line 97 of file qquick3dbakedlightmap.cpp.

Referenced by QQuick3DModel::updateSpatialNode().

+ Here is the caller graph for this function:

◆ key()

QString QQuick3DBakedLightmap::key ( ) const

Definition at line 112 of file qquick3dbakedlightmap.cpp.

◆ keyChanged

void QQuick3DBakedLightmap::keyChanged ( )
signal

Referenced by setKey().

+ Here is the caller graph for this function:

◆ loadPrefix()

QString QQuick3DBakedLightmap::loadPrefix ( ) const

Definition at line 127 of file qquick3dbakedlightmap.cpp.

◆ loadPrefixChanged

void QQuick3DBakedLightmap::loadPrefixChanged ( )
signal

Referenced by setLoadPrefix().

+ Here is the caller graph for this function:

◆ setEnabled

void QQuick3DBakedLightmap::setEnabled ( bool enabled)
slot

Definition at line 102 of file qquick3dbakedlightmap.cpp.

References changed(), emit, enabled, and enabledChanged().

+ Here is the call graph for this function:

◆ setKey

void QQuick3DBakedLightmap::setKey ( const QString & key)
slot

Definition at line 117 of file qquick3dbakedlightmap.cpp.

References changed(), emit, key, and keyChanged().

+ Here is the call graph for this function:

◆ setLoadPrefix

void QQuick3DBakedLightmap::setLoadPrefix ( const QString & loadPrefix)
slot

Definition at line 132 of file qquick3dbakedlightmap.cpp.

References changed(), emit, loadPrefix, and loadPrefixChanged().

+ Here is the call graph for this function:

Property Documentation

◆ enabled

bool QQuick3DBakedLightmap::enabled
readwrite

Definition at line 25 of file qquick3dbakedlightmap_p.h.

Referenced by setEnabled().

◆ key

QString QQuick3DBakedLightmap::key
readwrite

Definition at line 26 of file qquick3dbakedlightmap_p.h.

Referenced by setKey(), and QQuick3DModel::updateSpatialNode().

◆ loadPrefix

QString QQuick3DBakedLightmap::loadPrefix
readwrite

Definition at line 27 of file qquick3dbakedlightmap_p.h.

Referenced by setLoadPrefix(), and QQuick3DModel::updateSpatialNode().


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