QPointLight 类
class Qt3DRender::QPointLight在 Qt 3D 场景中封装点光源对象。 更多信息...
头文件 | #include <QPointLight> |
CMake | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake | QT += 3drender |
实例化自 | PointLight |
继承自 | Qt3DRender::QAbstractLight |
属性
- constantAttenuation : float
- linearAttenuation : float
- quadraticAttenuation : float
公共函数
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) |
详细描述
点光源是一种从单个点向所有方向发射光的光源。概念上,这与标准灯泡发出的光类似。
点光源使用三个衰减因子来描述光强度随距离的衰减。这些因子旨在一起用于计算总衰减。对于 Qt3D Extras 中的材料,使用以下公式,其中距离是从光源到被渲染表面的距离
totalAttenuation = 1.0 / (constantAttenuation + (linearAttenuation * distance) + (quadraticAttenuation * distance * distance));
自定义材料可以选择不同地解释这些因子。
属性文档
constant_attenuation : float
指定点光源的常数衰减。
注意:此属性的精确含义和使用取决于材料实现。
访问函数
float | constantAttenuation() const |
void | setConstantAttenuation(float value) |
通知信号
void | constantAttenuationChanged(float constantAttenuation) |
线性衰减 : 浮点数
指定点光源的线性衰减。
注意:此属性的精确含义和使用取决于材料实现。
访问函数
float | 线性衰减() const |
void | setLinearAttenuation(float value) |
通知信号
void | linearAttenuationChanged(float linearAttenuation) |
二次衰减 : 浮点数
指定点光源的二次衰减。
注意:此属性的精确含义和使用取决于材料实现。
访问函数
float | 二次衰减() const |
void | setQuadraticAttenuation(float value) |
通知信号
void | quadraticAttenuationChanged(float quadraticAttenuation) |
成员函数说明
[显式]
QPointLight::QPointLight(Qt3DCore::QNode *parent = nullptr)
使用指定的 parent 构建一个新的 QPointLight。
© 2024 Qt 公司。本文件中的文档贡献均为各自所有者的版权。本文件中的文档根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款进行许可。Qt 及其相关商标为芬兰的 Qt 公司及其全球子公司的商标。所有其他商标均为其各自所有者的财产。