Rendu basé sur la physique
Introduction
Le rendu basé sur la physique (PBR) est une technique de rendu qui vise à simuler avec précision les propriétés physiques des matériaux et des lumières d’une scène. Il repose sur les principes de la physique et utilise des algorithmes pour modéliser avec précision la manière dont la lumière interagit avec différents matériaux.
Le rendu basé sur la physique prend en compte la manière dont la lumière est absorbée, réfléchie et diffusée par diverses surfaces, telles que le métal, le verre et le plastique. Cela permet un rendu plus réaliste et plus précis des matériaux, ainsi que des effets d’éclairage plus fidèles, tels que les reflets, les réfractions et les ombres.
Outre un rendu visuel amélioré, cette technique simplifie également le flux de travail des artistes, car les matériaux reposent sur des paramètres physiques, plus intuitifs à utiliser et à ajuster. Un autre avantage réside dans le fait que l’utilisation de matériaux PBR rend l’aspect des ressources importées plus fidèle à leur conception d’origine.
Pour plus de détails sur la théorie sous-jacente au PBR, consultez : https://learnopengl.com/PBR/Theory et https://academy.substance3d.com/courses/the-pbr-guide-part-1 pour une explication approfondie.
Matériaux et flux de travail
Pour tirer parti du rendu basé sur la physique (PBR), Qt Quick 3D propose trois matériaux intégrés : PrincipledMaterial, SpecularGlossyMaterial et CustomMaterial. Chacun de ces matériaux offre un flux de travail différent pour définir les propriétés du matériau. Le choix du flux de travail et du matériau à utiliser dépendra du type de matériau que vous souhaitez créer ou du flux de travail défini par l’outil que vous utilisez pour créer le matériau.
Workflow « Rugosité métallique »
Le flux de travail « Rugosité métallique » est une méthode de rendu basé sur la physique qui utilise deux paramètres principaux pour représenter l’apparence d’un matériau : la réflectance métallique et la rugosité de surface. La réflectance métallique est une valeur comprise entre 0 (non métallique) et 1 (entièrement métallique) qui détermine la proportion de lumière incidente réfléchie par le matériau et celle qui est absorbée. La rugosité de surface est une valeur comprise entre 0 (lisse) et 1 (rugueuse) qui détermine à quel point la surface du matériau semble rugueuse ou lisse. L’aspect d’un matériau dans le workflow Métallique/Rugosité est déterminé par sa couleur de base, sa réflectance métallique et ses valeurs de rugosité de surface, qui peuvent être stockées sous forme de textures ou de valeurs constantes.
La couleur de base du matériau pour le workflow « Métallique/Rugosité » contient à la fois la couleur réfléchie pour les non-métaux (diélectriques) et la valeur de réflectance pour les métaux.
PrincipledMaterial
Le matériau « PrincipledMaterial » est le matériau principal qui active le workflow «Metallic Roughness» dans Qt Quick 3D. Vous trouverez ci-dessous un exemple d’utilisation du matériau « PrincipledMaterial » :
import QtQuick
import QtQuick3D
import QtQuick3D.Helpers
Window {
visible: true
width: 640
height: 480
title: qsTr("PrincipledMaterial")
View3D {
anchors.fill: parent
environment.backgroundMode: SceneEnvironment.SkyBox
environment.lightProbe: Texture {
textureData: ProceduralSkyTextureData {}
}
PerspectiveCamera {
z: 150
y: 40
eulerRotation.x: -15
}
Model {
x: -50
source: "#Sphere"
materials: [
PrincipledMaterial {
baseColor: "red"
metalness: 0.0
roughness: 0.1
}
]
}
Model {
x: 50
source: "#Sphere"
materials: [
PrincipledMaterial {
baseColor: "red"
metalness: 1.0
roughness: 0.1
}
]
}
}
}Cet exemple présente deux sphères, l’une dotée d’un matériau non métallique et l’autre d’un matériau métallique, et illustre les différentes significations que peut prendre la couleur de base en fonction du degré de métallicité.

Dans l’exemple précédent, toutes les propriétés pertinentes du workflow « Metallic Roughness » sont définies à l’aide d’une valeur constante, mais elles peuvent également être définies à l’aide de textures. L’exemple suivant montre comment utiliser des textures pour définir la couleur de base, le degré de métallicité et la rugosité d’un matériau :
import QtQuick
import QtQuick3D
import QtQuick3D.Helpers
Window {
visible: true
width: 640
height: 480
title: qsTr("PrincipledMaterial with Textures")
View3D {
anchors.fill: parent
environment.backgroundMode: SceneEnvironment.SkyBox
environment.lightProbe: Texture {
textureData: ProceduralSkyTextureData {
}
}
PerspectiveCamera {
z: 150
y: 40
eulerRotation.x: -15
}
Model {
source: "#Sphere"
materials: [
PrincipledMaterial {
baseColorMap: Texture {
source: "red.png"
}
metalnessMap: Texture {
source: "metalness.png"
}
roughnessMap: Texture {
source: "roughness.png"
}
}
]
}
}
}CustomMaterial
Bien que l’option « PrincipledMaterial » (Matériaux programmables) constitue un moyen très flexible de créer des matériaux, vous pouvez parfois avoir besoin d’un contrôle accru sur les propriétés du matériau. Pour cela, Qt Quick 3D propose l’option « CustomMaterial » (Matériaux programmables), qui vous permet de modifier les valeurs utilisées dans le workflow «Metallic Roughness» en ajustant le code de shader utilisé par le matériau.
Consultez la section « Matériaux, effets, géométrie et données de texture programmables » pour une introduction à la personnalisation des matériaux et du système d’éclairage PBR intégré à l’aide d’un code de shader personnalisé.
Workflow « Specular and Glossiness »
Le workflow Spéculaire/Brillance est une méthode de mise en œuvre du rendu basé sur la physique (PBR) qui utilise deux paramètres principaux pour représenter l’apparence d’un matériau : la réflectance spéculaire et la brillance. La réflectance spéculaire est une valeur de couleur qui détermine la couleur et l’intensité des reflets spéculaires à la surface du matériau. La brillance est une valeur comprise entre 0 (rugueux) et 1 (lisse) qui détermine à quel point la surface du matériau semble rugueuse ou lisse. Dans le workflow « Spéculaire/Brillance », l’aspect d’un matériau est déterminé par ses valeurs d’albédo, de réflectance spéculaire et de brillance, qui peuvent être stockées sous forme de textures ou de valeurs constantes. Un matériau présentant une réflectance spéculaire élevée et une brillance faible paraîtra plus métallique et présentera des reflets spéculaires nets, tandis qu’un matériau présentant une réflectance spéculaire faible et une brillance élevée paraîtra plus diffus et présentera des reflets spéculaires adoucis.
SpecularGlossyMaterial
Le matériau « SpecularGlossyMaterial » est le matériau qui permet d'activer le rendu «Specular/Glossiness» dans Qt Quick 3D.
Autres exemples
Pour plus d’exemples, consultez « Qt Quick 3D - Exemple de matériau Principled » et « Qt Quick 3D - Exemple de matériaux personnalisés ».
© 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.