QPhongAlphaMaterial Class
class Qt3DExtras::QPhongAlphaMaterialDie Klasse QPhongAlphaMaterial bietet eine Standardimplementierung des Phong-Lichteffekts mit Alpha. Mehr...
Kopfzeile: | #include <QPhongAlphaMaterial> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3dextras) target_link_libraries(mytarget PRIVATE Qt6::3dextras) |
qmake: | QT += 3dextras |
Vererbt: | Qt3DRender::QMaterial |
Status: | Veraltet |
Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.
Eigenschaften
|
|
Öffentliche Funktionen
QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr) | |
virtual | ~QPhongAlphaMaterial() |
float | alpha() const |
QColor | ambient() const |
Qt3DRender::QBlendEquation::BlendFunction | blendFunctionArg() const |
Qt3DRender::QBlendEquationArguments::Blending | destinationAlphaArg() const |
Qt3DRender::QBlendEquationArguments::Blending | destinationRgbArg() const |
QColor | diffuse() const |
float | shininess() const |
Qt3DRender::QBlendEquationArguments::Blending | sourceAlphaArg() const |
Qt3DRender::QBlendEquationArguments::Blending | sourceRgbArg() const |
QColor | specular() const |
Öffentliche Slots
void | setAlpha(float alpha) |
void | setAmbient(const QColor &ambient) |
void | setBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
void | setDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
void | setDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
void | setDiffuse(const QColor &diffuse) |
void | setShininess(float shininess) |
void | setSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
void | setSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
void | setSpecular(const QColor &specular) |
Signale
void | alphaChanged(float alpha) |
void | ambientChanged(const QColor &ambient) |
void | blendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
void | destinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
void | destinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
void | diffuseChanged(const QColor &diffuse) |
void | shininessChanged(float shininess) |
void | sourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
void | sourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
void | specularChanged(const QColor &specular) |
Detaillierte Beschreibung
Diese Klasse ist veraltet; verwenden Sie stattdessen QDiffuseSpecularMaterial.
Der Phong-Lichteffekt basiert auf der Kombination der 3 Beleuchtungskomponenten ambient, diffus und spiegelnd. Die relativen Stärken dieser Komponenten werden durch ihre Reflexionskoeffizienten gesteuert, die als RGB-Tripletts modelliert werden:
- Umgebungslicht ist die Farbe, die von einem Objekt ohne andere Lichtquelle abgestrahlt wird.
- Diffus ist die Farbe, die bei groben Oberflächenreflexionen mit den Lichtern emittiert wird.
- Specular ist die Farbe, die für glänzende Oberflächenreflexionen mit den Lichtern emittiert wird.
- Der Glanz einer Oberfläche wird durch eine Float-Eigenschaft gesteuert.
- Alpha ist die Transparenz der Oberfläche zwischen 0 (völlig transparent) und 1 (undurchsichtig).
Dieses Material verwendet einen Effekt mit einem einzigen Rendering-Pass-Ansatz und führt eine Beleuchtung pro Fragment durch. Die Techniken werden für OpenGL 2, OpenGL 3 oder höher sowie OpenGL ES 2 bereitgestellt.
Dokumentation der Eigenschaften
alpha : float
Enthält die Alpha-Komponente des Objekts, die zwischen 0 und 1 variiert.
Der Standardwert ist 0.5f.
Zugriffsfunktionen:
float | alpha() const |
void | setAlpha(float alpha) |
Melder-Signal:
void | alphaChanged(float alpha) |
ambient : QColor
Enthält die Umgebungsfarbe.
Zugriff auf Funktionen:
QColor | ambient() const |
void | setAmbient(const QColor &ambient) |
Benachrichtigungssignal:
void | ambientChanged(const QColor &ambient) |
blendFunctionArg : Qt3DRender::QBlendEquation::BlendFunction
Enthält das Argument der Überblendungsgleichungsfunktion.
Zugriffsfunktionen:
Qt3DRender::QBlendEquation::BlendFunction | blendFunctionArg() const |
void | setBlendFunctionArg(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
Benachrichtigungssignal:
void | blendFunctionArgChanged(Qt3DRender::QBlendEquation::BlendFunction blendFunctionArg) |
Siehe auch Qt3DRender::QBlendEquation::BlendFunction.
destinationAlphaArg : Qt3DRender::QBlendEquationArguments::Blending
Enthält das Überblendungsgleichungs-Ziel-Alpha-Überblendungsargument.
Zugriffsfunktionen:
Qt3DRender::QBlendEquationArguments::Blending | destinationAlphaArg() const |
void | setDestinationAlphaArg(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
Benachrichtigungssignal:
void | destinationAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationAlphaArg) |
Siehe auch Qt3DRender::QBlendEquationArguments::Blending.
destinationRgbArg : Qt3DRender::QBlendEquationArguments::Blending
Enthält das Überblendungsgleichungs-Ziel-RGB-Überblendungsargument.
Zugriffsfunktionen:
Qt3DRender::QBlendEquationArguments::Blending | destinationRgbArg() const |
void | setDestinationRgbArg(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
Benachrichtigungssignal:
void | destinationRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending destinationRgbArg) |
Siehe auch Qt3DRender::QBlendEquationArguments::Blending.
diffuse : QColor
Enthält die diffuse Farbe.
Zugriffsfunktionen:
QColor | diffuse() const |
void | setDiffuse(const QColor &diffuse) |
Melder-Signal:
void | diffuseChanged(const QColor &diffuse) |
shininess : float
Enthält den Glanzexponenten.
Zugriffsfunktionen:
float | shininess() const |
void | setShininess(float shininess) |
Melder-Signal:
void | shininessChanged(float shininess) |
sourceAlphaArg : Qt3DRender::QBlendEquationArguments::Blending
Enthält das Argument für die Überblendungsgleichung der Quelle für die Alpha-Überblendung.
Zugriffsfunktionen:
Qt3DRender::QBlendEquationArguments::Blending | sourceAlphaArg() const |
void | setSourceAlphaArg(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
Benachrichtigungssignal:
void | sourceAlphaArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceAlphaArg) |
Siehe auch Qt3DRender::QBlendEquationArguments::Blending.
sourceRgbArg : Qt3DRender::QBlendEquationArguments::Blending
Enthält das Überblendungsargument für die RGB-Quelle der Überblendungsgleichung.
Zugriffsfunktionen:
Qt3DRender::QBlendEquationArguments::Blending | sourceRgbArg() const |
void | setSourceRgbArg(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
Benachrichtigungssignal:
void | sourceRgbArgChanged(Qt3DRender::QBlendEquationArguments::Blending sourceRgbArg) |
Siehe auch Qt3DRender::QBlendEquationArguments::Blending.
specular : QColor
Enthält die spiegelnde Farbe.
Zugriffsfunktionen:
QColor | specular() const |
void | setSpecular(const QColor &specular) |
Benachrichtigungssignal:
void | specularChanged(const QColor &specular) |
Member Function Dokumentation
[explicit]
QPhongAlphaMaterial::QPhongAlphaMaterial(Qt3DCore::QNode *parent = nullptr)
Konstruiert eine neue QPhongAlphaMaterial-Instanz mit dem übergeordneten Objekt parent.
[virtual noexcept]
QPhongAlphaMaterial::~QPhongAlphaMaterial()
Zerstört die QPhongAlphaMaterial.
© 2025 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.