QPointLight Class

( Qt3DRender::QPointLight )

Encapsulate a Point Light object in a Qt 3D scene. 更多...

头: #include <QPointLight>
qmake: QT += 3drender
Since: Qt 5.5
实例化: PointLight
继承: Qt3DRender::QAbstractLight

特性

公共函数

QPointLight (Qt3DCore::QNode * parent = nullptr)
float constantAttenuation () const
float linearAttenuation () const
float quadraticAttenuation () const

公共槽

void setConstantAttenuation (float value )
void setLinearAttenuation (float value )
void setQuadraticAttenuation (float value )

信号

void constantAttenuationChanged (float constantAttenuation )
void linearAttenuationChanged (float linearAttenuation )
void quadraticAttenuationChanged (float quadraticAttenuation )

静态公共成员

const QMetaObject staticMetaObject

额外继承成员

详细描述

Encapsulate a Point Light object in a Qt 3D scene.

A point light is a light source that emits light in all directions, from a single point. Conceptually, this is similar to light given off by a standard light bulb.

A point light uses three attenuation factors to describe how the intensity of the light decreases over distance. These factors are designed to be used together in calcuating total attenuation. For the materials in Qt3D Extras the following formula is used, where distance is the distance from the light to the surface being rendered:

totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));
					

Custom materials may choose to interpret these factors differently.

特性文档编制

constantAttenuation : float

Specifies the constant attenuation of the point light

访问函数:

float constantAttenuation () const
void setConstantAttenuation (float value )

通知程序信号:

void constantAttenuationChanged (float constantAttenuation )

linearAttenuation : float

Specifies the linear attenuation of the point light

访问函数:

float linearAttenuation () const
void setLinearAttenuation (float value )

通知程序信号:

void linearAttenuationChanged (float linearAttenuation )

quadraticAttenuation : float

Specifies the quadratic attenuation of the point light

访问函数:

float quadraticAttenuation () const
void setQuadraticAttenuation (float value )

通知程序信号:

void quadraticAttenuationChanged (float quadraticAttenuation )

成员函数文档编制

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

构造新的 QPointLight 采用指定 parent .