- Qt 6.12
- Qt 3D
- C++ Classes
- Qt3DRender (Deprecated)
- QEnvironmentLight
- Qt 6.12.0 Reference Documentation

# Qt3DRender::QEnvironmentLight Class

class Qt3DRender::QEnvironmentLight

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

Header: | `#include <qenvironmentlight.h>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS 3drender)` `target_link_libraries(mytarget PRIVATE Qt6::3drender)`
qmake: | `QT += 3drender`
In QML: | EnvironmentLight
Inherits: | Qt3DCore::QComponent
Status: | Deprecated

This class is deprecated. We strongly advise against using it in new code.

- List of all members, including inherited members

## Properties

- irradiance : Qt3DRender::QAbstractTexture*
- specular : Qt3DRender::QAbstractTexture*

## Public Functions

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)

## Detailed Description

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

- cmftStudio
- IBLBaker
- Lys

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.

Note: The exact meaning and use of this property is up to the material implementation.

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.

Note: The exact meaning and use of this property is up to the material implementation.

Access functions:

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

Notifier signal:

void | specularChanged(Qt3DRender::QAbstractTexture *environmentSpecular)