Sur cette page

Qt3DExtras::QPhongMaterial Class

class Qt3DExtras::QPhongMaterial

La classe QPhongMaterial fournit une implémentation par défaut de l'effet d'éclairage Phong. En savoir plus...

En-tête : #include <qphongmaterial.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake : QT += 3dextras
Hérite de : Qt3DRender::QMaterial
Statut : Obsolète

Cette classe est obsolète. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Propriétés

Fonctions publiques

QPhongMaterial(Qt3DCore::QNode *parent = nullptr)
virtual ~QPhongMaterial()
QColor ambient() const
QColor diffuse() const
float shininess() const
QColor specular() const

Emplacements publics

void setAmbient(const QColor &ambient)
void setDiffuse(const QColor &diffuse)
void setShininess(float shininess)
void setSpecular(const QColor &specular)

Signaux

void ambientChanged(const QColor &ambient)
void diffuseChanged(const QColor &diffuse)
void shininessChanged(float shininess)
void specularChanged(const QColor &specular)

Description détaillée

Cette classe est obsolète ; utilisez plutôt QDiffuseSpecularMaterial.

L'effet d'éclairage Phong repose sur la combinaison de trois composantes d'éclairage : ambiante, diffuse et spéculaire. L'intensité relative de ces composantes est contrôlée par leurs coefficients de réflectivité, modélisés sous forme de triplets RVB :

  • L’ambient correspond à la couleur émise par un objet en l’absence de toute autre source lumineuse.
  • La couleur diffuse correspond à la couleur émise par les reflets sur des surfaces rugueuses sous l'effet de la lumière.
  • La couleur spéculaire est celle émise par les reflets sur une surface brillante sous l’effet de la lumière.
  • La brillance d’une surface est contrôlée par une propriété de type float.

Ce matériau utilise un effet avec une approche à passage de rendu unique et effectue un éclairage par fragment. Des techniques sont fournies pour OpenGL 2, OpenGL 3 ou supérieur, ainsi que pour OpenGL ES 2.

Documentation des propriétés

ambient : QColor

Contient la couleur ambiante.

Fonctions d'accès :

QColor ambient() const
void setAmbient(const QColor &ambient)

Signal de notification :

void ambientChanged(const QColor &ambient)

diffuse : QColor

Contient la couleur diffuse.

Fonctions d'accès :

QColor diffuse() const
void setDiffuse(const QColor &diffuse)

Signal de notification :

void diffuseChanged(const QColor &diffuse)

shininess : float

Contient l'exposant de brillance.

Fonctions d'accès :

float shininess() const
void setShininess(float shininess)

Signal de notification :

void shininessChanged(float shininess)

specular : QColor

Contient la couleur spéculaire.

Fonctions d'accès :

QColor specular() const
void setSpecular(const QColor &specular)

Signal de notification :

void specularChanged(const QColor &specular)

Documentation des fonctions membres

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

Crée une nouvelle instance de `QPhongMaterial` dont l'objet parent est ` parent`.

[virtual noexcept] QPhongMaterial::~QPhongMaterial()

Supprime l'QPhongMaterial.

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