QEnvironmentLight Class

(Qt3DRender::QEnvironmentLight)

Encapsulate an environment light object in a Qt 3D scene. More...

Header: #include <QEnvironmentLight>
qmake: QT += 3drender
Since: Qt 5.9
Instantiated By: EnvironmentLight
Inherits: Qt3DCore::QComponent

Properties

Public Functions

QEnvironmentLight(Qt3DCore::QNode *parent = nullptr)
virtual ~QEnvironmentLight()
Qt3DRender::QAbstractTexture *irradiance() const
Qt3DRender::QAbstractTexture *specular() const

Public Slots

void setIrradiance(Qt3DRender::QAbstractTexture *irradiance)
void setSpecular(Qt3DRender::QAbstractTexture *specular)

Signals

void irradianceChanged(Qt3DRender::QAbstractTexture *environmentIrradiance)
void specularChanged(Qt3DRender::QAbstractTexture *environmentSpecular)

Static Public Members

const QMetaObject staticMetaObject
  • 9 static public members inherited from QObject

Additional Inherited Members

Detailed Description

Encapsulate an environment light object in a Qt 3D scene.

QEnvironmentLight uses cubemaps to implement image-based lighting (IBL), a technique often used in conjunction with physically-based rendering (PBR). The cubemaps are typically expected be based on high dynamic range (HDR) images, with a suitable OpenGL format (such as RGBA16F) that can handle the increased range of values.

There are a variety of tools that can be used to produce the cubemaps needed by QEnvironmentLight. Some examples include

HDRI Haven provides many CC0-licensed HDR images that can be used as source material for the above tools.

Property Documentation

irradiance : Qt3DRender::QAbstractTexture*

Holds the current environment irradiance map texture.

By default, the environment irradiance texture is null.

Access functions:

Qt3DRender::QAbstractTexture *irradiance() const
void setIrradiance(Qt3DRender::QAbstractTexture *irradiance)

Notifier signal:

void irradianceChanged(Qt3DRender::QAbstractTexture *environmentIrradiance)

specular : Qt3DRender::QAbstractTexture*

Holds the current environment specular map texture.

By default, the environment specular texture is null.

Access functions:

Qt3DRender::QAbstractTexture *specular() const
void setSpecular(Qt3DRender::QAbstractTexture *specular)

Notifier signal:

void specularChanged(Qt3DRender::QAbstractTexture *environmentSpecular)

Member Function Documentation

QEnvironmentLight::QEnvironmentLight(Qt3DCore::QNode *parent = nullptr)

Default constructs an instance of QEnvironmentLight.

[virtual] QEnvironmentLight::~QEnvironmentLight()

Destroys the instance of QEnvironmentLight. The destructor is virtual.

© 2021 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.