Le matériau définit la couleur à appliquer sur la géométrie et sa réaction face à la
lumière. Le composant PhongMaterial est basé sur le modèle d'éclairage de Phong.
En termes simples, ce modèle définit trois couleurs :
la couleur d'ambiance (ambiant), qui ne dépend pas de l'éclairage externe ;
la couleur de diffusion (diffuse), émise par les surfaces rugueuses
(relativement uniforme sur la surface de l'objet) ;
la couleur spéculaire (specular), émise par les surfaces brillantes (qui
présentent des points lumineux très intenses). Le degré de brillance est contrôlé
par le paramètre shininess.
PhongMaterial propose des valeurs par défaut pour chacun de ces paramètres.
Le positionnement de l'objet est contrôlé par une transformation. Ici, deux
transformations sont combinées :
une mise à l'échelle scale3D, indiquée par trois nombres : chacun correspond
à la mise à l'échelle dans chacune des trois dimensions (les trois nombres sont
rassemblés par Qt.vector3d [28] ). La valeur 1.0 garde une taille constante
dans cette dimension, une valeur inférieure diminue la taille (elle aplatit le tore
selon cet axe), une valeur supérieure l'augmente. Ici, les valeurs données
aplatissent le tore selon l'axe vertical, pour se rapprocher d'un frisbee avec un
trou au centre ;
une rotation rotation, indiquée par un objet spécifiant la rotation [29] . La
fonction fromAxisAndAngle donne une manière simple de représenter une
rotation, avec un axe (les trois premiers nombres, à nouveau rassemblés par
Qt.vector3d) et un angle (en degrés).
Une transformation peut aussi mémoriser une translation (translation), à nouveau
indiquée par trois nombres (rassemblés par Qt.vector3d), chacun indiquant le
déplacement dans une dimension.
Note > Qt 3D s'appuie sur des notions classiques de synthèse d'images, qu'il n'y a
pas lieu d'approfondir dans le cadre de cet ouvrage. Si vous n'êtes pas très à l'aise
avec celles-ci, nous vous invitons à consulter le livre Synthèse d'images avec
OpenGL(ES), écrit par Pierre Nerzic, éd. D-BookeR (2017). Vous y trouverez en
457
lumière. Le composant PhongMaterial est basé sur le modèle d'éclairage de Phong.
En termes simples, ce modèle définit trois couleurs :
la couleur d'ambiance (ambiant), qui ne dépend pas de l'éclairage externe ;
la couleur de diffusion (diffuse), émise par les surfaces rugueuses
(relativement uniforme sur la surface de l'objet) ;
la couleur spéculaire (specular), émise par les surfaces brillantes (qui
présentent des points lumineux très intenses). Le degré de brillance est contrôlé
par le paramètre shininess.
PhongMaterial propose des valeurs par défaut pour chacun de ces paramètres.
Le positionnement de l'objet est contrôlé par une transformation. Ici, deux
transformations sont combinées :
une mise à l'échelle scale3D, indiquée par trois nombres : chacun correspond
à la mise à l'échelle dans chacune des trois dimensions (les trois nombres sont
rassemblés par Qt.vector3d [28] ). La valeur 1.0 garde une taille constante
dans cette dimension, une valeur inférieure diminue la taille (elle aplatit le tore
selon cet axe), une valeur supérieure l'augmente. Ici, les valeurs données
aplatissent le tore selon l'axe vertical, pour se rapprocher d'un frisbee avec un
trou au centre ;
une rotation rotation, indiquée par un objet spécifiant la rotation [29] . La
fonction fromAxisAndAngle donne une manière simple de représenter une
rotation, avec un axe (les trois premiers nombres, à nouveau rassemblés par
Qt.vector3d) et un angle (en degrés).
Une transformation peut aussi mémoriser une translation (translation), à nouveau
indiquée par trois nombres (rassemblés par Qt.vector3d), chacun indiquant le
déplacement dans une dimension.
Note > Qt 3D s'appuie sur des notions classiques de synthèse d'images, qu'il n'y a
pas lieu d'approfondir dans le cadre de cet ouvrage. Si vous n'êtes pas très à l'aise
avec celles-ci, nous vous invitons à consulter le livre Synthèse d'images avec
OpenGL(ES), écrit par Pierre Nerzic, éd. D-BookeR (2017). Vous y trouverez en
457
