Auf dieser Seite

Qt3DRender::QPointLight Class

class Qt3DRender::QPointLight

Kapseln Sie ein „Point Light“-Objekt in einer „ Qt 3D “-Szene ein. Mehr...

Überschrift: #include <qpointlight.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
In QML: PointLight
Erbt von: Qt3DRender::QAbstractLight
Status: Veraltet

Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.

Eigenschaften

Öffentliche Funktionen

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

Öffentliche Slots

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

Signale

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

Ausführliche Beschreibung

Eine Punktlichtquelle ist eine Lichtquelle, die von einem einzigen Punkt aus Licht in alle Richtungen abstrahlt. Konzeptionell ähnelt dies dem Licht einer herkömmlichen Glühbirne.

Eine Punktlichtquelle verwendet drei Abschwächungsfaktoren, um zu beschreiben, wie die Lichtintensität mit zunehmender Entfernung abnimmt. Diese Faktoren sind so konzipiert, dass sie gemeinsam zur Berechnung der Gesamtabschwächung herangezogen werden. Für die Materialien in Qt3D Extras wird die folgende Formel verwendet, wobei „distance“ die Entfernung von der Lichtquelle zur gerenderten Oberfläche angibt:

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

Benutzerdefinierte Materialien können diese Faktoren nach Belieben unterschiedlich interpretieren.

Dokumentation der Eigenschaften

constantAttenuation : float

Legt die konstante Dämpfung der Punktlichtquelle fest.

Hinweis: Die genaue Bedeutung und Verwendung dieser Eigenschaft hängt von der jeweiligen Materialimplementierung ab.

Zugriffsfunktionen:

float constantAttenuation() const
void setConstantAttenuation(float value)

Benachrichtigungssignal:

void constantAttenuationChanged(float constantAttenuation)

linearAttenuation : float

Legt die lineare Dämpfung der Punktlichtquelle fest.

Hinweis: Die genaue Bedeutung und Verwendung dieser Eigenschaft hängt von der jeweiligen Materialimplementierung ab.

Zugriffsfunktionen:

float linearAttenuation() const
void setLinearAttenuation(float value)

Benachrichtigungssignal:

void linearAttenuationChanged(float linearAttenuation)

quadraticAttenuation : float

Legt die quadratische Dämpfung der Punktlichtquelle fest.

Hinweis: Die genaue Bedeutung und Verwendung dieser Eigenschaft hängt von der jeweiligen Materialimplementierung ab.

Zugriffsfunktionen:

float quadraticAttenuation() const
void setQuadraticAttenuation(float value)

Benachrichtigungssignal:

void quadraticAttenuationChanged(float quadraticAttenuation)

Dokumentation der Member-Funktionen

[explicit] QPointLight::QPointLight(Qt3DCore::QNode *parent = nullptr)

Erstellt ein neues „QPointLight“-Objekt mit dem angegebenen „ parent “.

© 2026 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.