Sur cette page

PrincipledMaterial QML Type

Vous permet de définir un matériau pour des objets 3D à l'aide du workflow « métal/rugosité ». En savoir plus...

Import Statement: import QtQuick3D
Inherits:

Material

Propriétés

Description détaillée

Avant qu'un modèle puisse être rendu dans une scène, il doit être associé à au moins un matériau décrivant comment le maillage doit être ombré. Le PrincipledMaterial est un matériau PBR de type « métal/rugosité » conçu pour être facile à utiliser grâce à un ensemble minimal de paramètres. Outre le fait qu'il comporte peu de paramètres, toutes les valeurs d'entrée sont strictement normalisées entre 0 et 1 et disposent de valeurs par défaut pertinentes, ce qui signifie que même sans modifier aucune valeur, le matériau peut être utilisé pour ombrer un modèle. Pour une introduction sur la manière dont les différentes propriétés du Principled Material influencent l'ombrage d'un modèle, consultez l'exemple Principled Material.

Workflow métal/rugosité

Le matériau « Principled » est ce qu'on appelle un matériau « métal/rugosité » ; cela signifie essentiellement que les principales caractéristiques du matériau sont contrôlées par les propriétés « metallness », « roughness » et « base color ».

Métallicité

Dans le monde réel, les matériaux sont classés en deux grandes catégories : les métaux et les diélectriques (non-métaux). Dans le matériau « Principled », la catégorie à laquelle appartient un matériau est déterminée par la valeur de « metalness ». Si la valeur de « metalness » est définie sur 0, le matériau est considéré comme un diélectrique, tandis que toute valeur supérieure à 0 correspond à un métal. En réalité, les métaux ont généralement une valeur de « metalness » égale à 1, mais des valeurs comprises entre 0 et 1 sont possibles et sont généralement utilisées pour les métaux à réflectance réduite. Par exemple, pour simuler de la corrosion ou un effet similaire sur un matériau, il convient de réduire l’ metalness e de ce dernier afin que ses propriétés finales se rapprochent davantage de celles d’un matériau diélectrique. Étant donné que la valeur « metalness » influe sur la réflectance du matériau, on pourrait être tenté d’utiliser la paramètre « metalness » pour ajuster la brillance ; toutefois, il convient d’abord de déterminer le type de matériau que l’on souhaite représenter. Augmenter la valeur de l’ metalness e pour donner à un matériau diélectrique un aspect plus poli introduira des propriétés qui ne sont pas fidèles à celles d’un matériau diélectrique ; il convient donc de se demander s’il ne serait pas plus approprié d’ajuster, par exemple, la valeur de l’ roughness e à la place.

Rugosité

L’ roughness e d’un matériau décrit l’état de la surface d’un objet. Une faible valeur d’ roughness e signifie que l’objet présente une surface lisse et qu’il sera donc plus réfléchissant qu’un matériau dont la valeur d’ roughness e est plus élevée.

Couleur de base

L’ base color e d’un matériau métallique/rugueux contient à la fois les données diffuses et spéculaires ; c’est principalement la valeur d’ metalness e qui détermine dans quelle mesure la couleur de base est interprétée comme l’une ou l’autre. Par exemple, pour un matériau dont la valeur de « metalness » est égale à 1, la majeure partie de sa couleur de base sera interprétée comme une couleur spéculaire, tandis que la couleur diffuse prendra une teinte noire. L’inverse se produira pour un matériau dont la valeur de « metalness » est égale à 0. Il s’agit bien sûr d’une explication quelque peu simplifiée, mais elle donne une idée générale de la manière dont les valeurs « base color » et « metalness » interagissent. Pour ceux qui sont plus familiers avec un workflow « Specular/Glossiness », il existe ici une différence notable qui mérite d’être soulignée : les données de couleur des deux matériaux ne sont pas directement compatibles, car dans une material « Specular/Glossiness », les couleurs diffuse et spéculaire proviennent d’entrées distinctes.

Documentation des propriétés

alphaCutoff : real

La propriété alphaCutoff permet de définir la valeur seuil lors de l'utilisation de la fonction « Mask alphaMode ». Les fragments dont la valeur alpha est inférieure à ce seuil seront rendus entièrement transparents (0.0 pour tous les canaux de couleur). Lorsque la valeur alpha est égale ou supérieure à la valeur seuil, la couleur n'est en rien modifiée.

La valeur par défaut est 0,5.

Voir également alphaMode.

alphaMode : enumeration

Cette propriété définit la manière dont la valeur de couleur alpha de baseColor et le canal alpha d'un base color map sont utilisés.

Remarque : le test de seuil alpha ne prend en compte que la valeur alpha de la couleur de base. Les valeurs de opacity et Node::opacity ne sont pas prises en compte dans ce cas.

Remarque : lors de l'échantillonnage d'une carte de couleurs de base, la valeur alpha effective est égale à l'alpha échantillonné multiplié par l'alpha de baseColor.

ConstanteDescription
PrincipledMaterial.DefaultAucun test n’est appliqué ; la valeur alpha effective est transmise telle quelle. Notez qu’un alpha de type « baseColor » ou « baseColorMap » inférieur à 1.0 n’implique pas automatiquement un mélange alpha ; l’objet doté de ce matériau peut toujours être traité comme opaque si aucune autre propriété pertinente (telle qu’une opacité inférieure à 1, la présence d’une carte d’opacité ou une valeur non par défaut de « blendMode ») ne déclenche le traitement de l’objet comme semi-transparent. Pour garantir que le mélange alpha se produise indépendamment de toute autre propriété de l’objet ou du matériau, définissez plutôt la valeur « Blend ».
PrincipledMaterial.BlendAucun test de coupure n’est appliqué, mais le mélange alpha est garanti. L’objet doté de ce matériau ne sera donc jamais considéré comme opaque par le moteur de rendu.
PrincipledMaterial.OpaqueAucun test de seuil n’est appliqué et l’objet rendu est considéré comme entièrement opaque, ce qui signifie que les valeurs alpha de la couleur de sommet, de la couleur de base et de la carte de couleur de base sont ignorées et remplacées par la valeur 1,0. Ce mode ne garantit pas l’absence de mélange alpha. Si des propriétés pertinentes (telles qu’une opacité inférieure à 1, une carte d’opacité ou un mode alpha non par défaut blendMode) l’indiquent, l’objet sera tout de même traité comme semi-transparent par le pipeline de rendu, tout comme avec le mode alpha Default.
PrincipledMaterial.MaskUn test basé sur ` alphaCutoff ` est appliqué. Si la valeur alpha effective est inférieure à ` alphaCutoff`, le fragment est rendu entièrement transparent et est écarté (avec toutes les implications que cela comporte : le tampon de profondeur n’est pas écrit pour ce fragment). Sinon, l’alpha est défini à 1,0, de sorte que le fragment devienne entièrement opaque. En matière de mélange alpha, le comportement de ce mode est identique à celui de Opaque, quel que soit le résultat du test de seuil. Cela signifie que les notes de mise en œuvre relatives à la couverture alpha de la spécification glTF 2 sont respectées. Les objets soumis à des tests de coupure alpha peuvent également projeter des ombres, car ils se comportent par défaut comme des objets opaques, à moins que les propriétés concernées (telles qu’une opacité inférieure à 1, une carte d’opacité ou une valeur de l’ blendMode e non par défaut) n’indiquent le contraire (auquel cas la projection d’ombres ne sera pas possible).

Voir également alphaCutoff et blendMode.

attenuationColor : color

Cette propriété définit la couleur que prend la lumière blanche en raison de l'absorption lorsqu'elle atteint la distance d'atténuation. La valeur par défaut est Qt.White

attenuationDistance : real

Cette propriété définit la densité du milieu, exprimée comme la distance moyenne parcourue par la lumière dans ce milieu avant d'interagir avec une particule. La valeur est exprimée dans l'espace mondial. La valeur par défaut est +infinity.

baseColor : color

Cette propriété définit la couleur de base du matériau. En fonction du type de matériau spécifié (métal ou diélectrique), les canaux diffus et spéculaire seront définis en conséquence. Par exemple, un matériau diélectrique aura une couleur diffuse égale à la couleur de base, tandis que sa couleur spéculaire, en fonction de l'intensité spéculaire, sera d'une teinte claire. Pour les métaux, les canaux diffus et spéculaire seront mélangés à partir de la couleur de base et présenteront un canal diffus foncé et un canal spéculaire proche de la couleur de base.

Voir également baseColorMap et alphaMode.

baseColorChannel : enumeration [since 6.8]

Cette propriété définit le canal de texture utilisé pour lire la valeur d'baseColor ion à partir de baseColorMap. Pour utiliser un seul canal de texture comme couleur, vous devez activer l'option « baseColorSingleChannelEnabled ». La valeur par défaut est « Material.R ».

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

Cette propriété a été introduite dans Qt 6.8.

baseColorMap : Texture

Cette propriété définit la texture utilisée pour définir la couleur de base du matériau.

Voir également baseColor et alphaMode.

baseColorSingleChannelEnabled : bool [since 6.8]

Lorsque cette propriété est activée, le matériau utilise la valeur unique de la propriété « baseColorChannel » de l'objet « baseColorMap » comme valeur RVB et la valeur 1,0 comme valeur d'opacité. La valeur par défaut est « false ».

Cette propriété a été introduite dans Qt 6.8.

blendMode : enumeration

Cette propriété détermine la manière dont les couleurs du modèle affiché se fondent avec celles situées derrière.

ConstanteDescription
PrincipledMaterial.SourceOverMode de fusion par défaut. Les objets opaques masquent les objets situés derrière eux. Ce mode par défaut ne garantit pas à lui seul la fusion alpha dans le pipeline de rendu pour les modèles utilisant ce matériau, mais fait plutôt dépendre cette décision d'un certain nombre de facteurs : si l’opacité totale de l’objet et du matériau est de 1.0, s’il n’y a pas de carte d’opacité dans le matériau et si alphaMode n’est pas défini sur une valeur imposant le mélange alpha, alors le modèle est traité comme opaque, ce qui signifie qu’il est rendu avec le test de profondeur et l’écriture de profondeur activés, avec les autres objets opaques, et que le mélange est désactivé. Dans le cas contraire, le modèle est considéré comme semi-transparent et est rendu après les objets opaques, avec les autres objets semi-transparents, dans un ordre de l’arrière vers l’avant en fonction de la distance entre leur centre et la caméra, avec le mélange alpha activé.
PrincipledMaterial.ScreenLes couleurs sont mélangées à l’aide d’une multiplication inversée, ce qui produit un résultat plus clair. Ce mode de fusion est indépendant de l’ordre ; si vous utilisez des objets semi-opaques et que vous constatez un « effet de saut » lorsque les faces ou les modèles sont triés différemment, l’utilisation de la fusion « Screen » est un moyen d’obtenir des résultats sans cet effet.
PrincipledMaterial.MultiplyLes couleurs sont mélangées à l'aide d'une multiplication, ce qui produit un résultat plus sombre. Ce mode de fusion est également indépendant de l'ordre.

Voir également alphaMode et Qt Quick Architecture 3D.

clearcoatAmount : real

Cette propriété définit l'intensité de la couche de vernis transparent.

La valeur par défaut est 0.0

clearcoatChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur de l'épaisseur de la couche transparente à partir de clearcoatMap. La valeur par défaut est Material.R.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

clearcoatFresnelBias : real

Cette propriété accentue les reflets frontaux (lorsqu’on regarde directement la surface) tout en conservant les reflets observés sous des angles rasants. Pour modifier ce paramètre, vous devez activer l’option « clearcoatFresnelScaleBiasEnabled ». La valeur par défaut est « 0.0 ».

clearcoatFresnelPower : real

Cette propriété réduit les reflets frontaux (lorsqu'on regarde directement la surface) tout en conservant les reflets observés sous des angles rasants. La valeur par défaut est « 5.0 ».

clearcoatFresnelScale : real

Cette propriété ajuste l'intensité des reflets frontaux (lorsqu'on regarde directement la surface) tout en conservant les reflets observés sous des angles rasants. Pour modifier ce paramètre, vous devez activer l'option « clearcoatFresnelScaleBiasEnabled ». La valeur par défaut est « 1.0 ».

clearcoatFresnelScaleBiasEnabled : real

En définissant cette valeur sur « true », le matériau tiendra compte des paramètres « Clearcoat Fresnel Scale » et « Clearcoat Fresnel Bias ». La valeur par défaut est « false ».

clearcoatMap : Texture

Cette propriété définit une texture utilisée pour déterminer l'intensité de la couche de vernis. La valeur de «clearcoatAmount » sera multipliée par la valeur lue à partir de cette texture.

clearcoatNormalMap : Texture

Cette propriété définit une texture utilisée pour déterminer le mappage normal appliqué à la couche de vernis transparent.

clearcoatNormalStrength : real

Cette propriété permet de contrôler l'amplitude du déplacement simulé pour l'clearcoatNormalMap.

clearcoatRoughnessAmount : real

Cette propriété définit la rugosité de la couche de vernis. La valeur par défaut est 0.0

clearcoatRoughnessChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire le niveau de rugosité de la couche transparente à partir de clearcoatRoughnessMap. La valeur par défaut est Material.G.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

clearcoatRoughnessMap : Texture

Cette propriété définit une texture utilisée pour déterminer la rugosité de la couche de vernis. La valeur de «clearcoatRoughnessAmount » sera multipliée par la valeur lue à partir de cette texture.

emissiveChannel : enumeration [since 6.8]

Cette propriété définit le canal de texture utilisé pour lire la valeur d'émission à partir de emissiveMap. Pour utiliser un seul canal de texture comme couleur, vous devez activer l'option « emissiveSingleChannelEnabled ». La valeur par défaut est Material.R.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

Cette propriété a été introduite dans Qt 6.8.

emissiveFactor : vector3d

Cette propriété détermine la couleur de l'auto-illumination de ce matériau. Si une carte d'émission est définie, les composantes x, y et z sont utilisées comme facteurs (multiplicateurs) pour les canaux R, G et B de la texture, respectivement. La valeur par défaut est (0, 0, 0), ce qui signifie qu’il n’y a aucune contribution émissive.

Remarque : si vous définissez lightingMode sur DefaultMaterial.NoLighting, le facteur d'émission n'a aucun effet sur la scène.

emissiveMap : Texture

Cette propriété définit une texture RVB qui servira à déterminer l'intensité de la couleur d'émission.

emissiveSingleChannelEnabled : bool [since 6.8]

Lorsque cette propriété est activée, le matériau utilise la valeur unique de l'emissiveChannel, issue de l'emissiveMap, comme valeur RVB. La valeur par défaut est « false ».

Cette propriété a été introduite dans Qt 6.8.

fresnelBias : real

Cette propriété accentue les reflets frontaux (lorsqu’on regarde directement la surface) tout en conservant les reflets observés sous des angles rasants. Pour modifier ce paramètre, vous devez activer l’option « fresnelScaleBiasEnabled ». La valeur par défaut est « 0.0 ».

fresnelPower : real

Cette propriété réduit les reflets frontaux (lorsqu’on regarde directement la surface) tout en conservant les reflets observés sous des angles rasants. La valeur par défaut est « 5.0 ».

fresnelScale : real

Cette propriété ajuste l’intensité des reflets frontaux (lorsqu’on regarde directement la surface) tout en conservant les reflets observés sous des angles rasants. Pour modifier ce paramètre, vous devez activer l’option « fresnelScaleBiasEnabled ». La valeur par défaut est « 1.0 ».

fresnelScaleBiasEnabled : real

En définissant cette valeur sur « true », le matériau tiendra compte des paramètres « Fresnel Scale » et « Fresnel Bias ». La valeur par défaut est « false ».

heightAmount : real

Cette propriété contient le facteur utilisé pour modifier les valeurs issues de la texture « heightMap ». La valeur doit être comprise entre 0,0 et 1,0. La valeur par défaut est 0,0, ce qui signifie que le décalage en hauteur sera désactivé, même si une carte d'altitude est définie.

heightChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur de hauteur à partir de heightMap. La valeur par défaut est Material.R.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

heightMap : Texture

Cette propriété définit une texture utilisée pour déterminer l'amplitude du déplacement de la texture lors de son rendu, grâce à la technique du « parallax mapping ». Les valeurs doivent être linéaires et comprises entre 0,0 et 1,0, où 0,0 correspond à l'absence de déplacement et 1,0 au déplacement maximal.

indexOfRefraction : real

Cette propriété définit l'indice de réfraction du matériau. La valeur par défaut de ` 1.5 ` correspond à la valeur idéale pour des matériaux tels que le plastique ou le verre, mais d'autres matériaux comme l'eau, l'asphalte, le saphir ou le diamant nécessiteraient une valeur ajustée pour un rendu plus réaliste. Pour des matériaux réalistes, la valeur de `indexOfRefraction` devrait généralement se situer entre ` 1.0 ` et 3.0

Voici quelques exemples d’indices de réfraction de matériaux courants :

MatériauIndice de réfraction
Air1,0
Eau1,33
Verre1,55
Saphir1,76
Diamant2,42

Remarque : aucun matériau connu dans le monde ne présente un indice de réfraction supérieur à 3.0.

invertOpacityMapValue : real [since 6.8]

Cette propriété inverse la valeur d'opacité de l'opacityMap. La valeur par défaut est false.

Cette propriété a été introduite dans Qt 6.8.

lighting : enumeration

Cette propriété définit la méthode d'éclairage utilisée lors de la génération de ce matériau.

La valeur par défaut est PrincipledMaterial.FragmentLighting

Lorsque vous utilisez « PrincipledMaterial.FragmentLighting », l’éclairage diffus et spéculaire est calculé pour chaque pixel rendu. Certains effets (tels que l’effet Fresnel ou la carte de normales) nécessitent l’option « PrincipledMaterial.FragmentLighting » pour fonctionner.

Lorsque vous utilisez « PrincipledMaterial.NoLighting », aucun éclairage n’est calculé. Ce mode est (comme on peut s’y attendre) très rapide et s’avère particulièrement efficace lorsque vous utilisez des images de texture qui ne nécessitent pas d’être ombrées par l’éclairage. Toutes les autres propriétés d’ombrage, à l’exception des valeurs d’ baseColor, des valeurs alpha et des couleurs de sommets, seront ignorées.

ConstanteValeur
PrincipledMaterial.NoLighting
PrincipledMaterial.FragmentLighting

lineWidth : real

Cette propriété détermine la largeur des lignes affichées lorsque la géométrie utilise un type de primitive « lignes » ou « bandes de lignes ». La valeur par défaut est 1,0. Cette propriété n'est pas applicable lors de l'affichage d'autres types de géométrie, tels que les maillages triangulaires.

Avertissement : les largeursde ligne autres que 1 peuvent ne pas être prises en charge lors de l'exécution, selon l'API graphique sous-jacente. Dans ce cas, la demande de modification de la largeur est ignorée. Par exemple, aucune des API suivantes ne prend en charge les lignes larges : Direct3D, Metal, OpenGL avec des contextes de profil de base.

maxHeightMapSamples : int

Cette propriété définit le nombre maximal d'échantillons utilisés pour effectuer le « Parallex Occlusion Mapping » à l'aide de la fonction ` heightMap`. La valeur `maxHeightMapSamples` correspond au nombre d'échantillons de la carte de hauteur ( heightMap ) utilisés lorsque l'on regarde parallèlement à une surface. La valeur par défaut est 32.

Le nombre réel d’échantillons utilisés pour chaque fragment se situera entre minHeightMapSamples et maxHeightMapSamples, en fonction de l’angle de la caméra par rapport à la surface en cours de rendu.

Remarque : cette valeur ne doit être modifiée que pour affiner le rendu des matériaux utilisant une carte de hauteur ( heightMap ), uniquement en cas d’apparition d’artefacts indésirables.

metalness : real

La propriété « metalness » définit le caractère métallique du matériau. La valeur est normalisée : 0,0 signifie que le matériau est diélectrique (non métallique) et 1,0 signifie qu’il s’agit d’un métal.

Remarque : en principe, les matériaux sont soit des diélectriques avec une métallicité de 0, soit des métaux avec une métallicité de 1. Les valeurs de métallicité comprises entre 0 et 1 sont toutefois autorisées et donneront un matériau qui est un mélange entre les différents modèles.

L'intervalle est compris entre [0,0 ; 1,0]. La valeur par défaut est 0.

metalnessChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur de métallicité à partir de metalnessMap. La valeur par défaut est Material.B.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

metalnessMap : Texture

Cette propriété permet de définir une texture qui servira à déterminer le degré de métallicité des différentes parties du matériau.

minHeightMapSamples : int

Cette propriété définit le nombre minimum d'échantillons utilisés pour effectuer le « Parallex Occlusion Mapping » à l'aide de la fonction « heightMap ». La valeur « minHeightMapSamples » correspond au nombre d'échantillons de la « heightMap » utilisés lorsque l'on regarde directement une surface (lorsque la vue de la caméra est perpendiculaire au fragment). La valeur par défaut est 8.

Le nombre réel d’échantillons utilisés pour chaque fragment se situera entre minHeightMapSamples et maxHeightMapSamples, en fonction de l’angle de la caméra par rapport à la surface en cours de rendu.

Remarque : cette valeur ne doit être modifiée que pour affiner le rendu des matériaux utilisant une carte de hauteur minimale ( heightMap ) en cas d’apparition d’artefacts indésirables.

normalMap : Texture

Cette propriété définit une image RVB utilisée pour simuler un déplacement géométrique fin à la surface du matériau. Les canaux RVB indiquent les écarts normaux selon les axes X, Y et Z.

Remarque : les cartesde normales n'ont aucune incidence sur la silhouette d'un modèle.

normalStrength : real

Cette propriété permet de contrôler l'amplitude du déplacement simulé pour l'normalMap.

occlusionAmount : real

Cette propriété contient le facteur utilisé pour modifier les valeurs de la texture « occlusionMap ». La valeur doit être comprise entre 0,0 et 1,0. La valeur par défaut est 1,0.

occlusionChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur d'occlusion à partir de occlusionMap. La valeur par défaut est Material.R.

ConstanteDescription
Material.RLit la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

occlusionMap : Texture

Cette propriété définit une texture servant à déterminer la quantité de lumière que doivent recevoir les différentes zones du matériau. Les valeurs doivent être linéaires, comprises entre 0,0 et 1,0, où 0,0 signifie « aucune lumière » et 1,0 signifie que l'effet de l'éclairage reste inchangé.

Voir également occlusionAmount.

opacity : real

Cette propriété réduit l'opacité de ce matériau uniquement, indépendamment du modèle.

opacityChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur d'opacité à partir de opacityMap. La valeur par défaut est Material.A.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

opacityMap : Texture

Cette propriété définit une texture permettant de contrôler l'opacité de manière différente selon les différentes parties du matériau.

pointSize : real

Cette propriété détermine la taille des points affichés lorsque la géométrie utilise un type de primitive « points ». La valeur par défaut est 1,0. Cette propriété n'a pas d'incidence lors de l'affichage d'autres types de géométrie, tels que les maillages triangulaires.

Avertissement : les taillesde points différentes de 1 peuvent ne pas être prises en charge lors de l'exécution, selon l'API graphique sous-jacente. Par exemple, définir une taille différente de 1 n'a aucun effet avec Direct 3D.

roughness : real

Cette propriété contrôle l'intensité des reflets spéculaires générés par les lumières, ainsi que la netteté des reflets en général. Des valeurs plus élevées augmentent la rugosité, adoucissent les reflets spéculaires et rendent les reflets plus flous. La plage de valeurs est comprise entre [0,0 et 1,0]. La valeur par défaut est 0.

roughnessChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur de rugosité à partir de roughnessMap. La valeur par défaut est Material.G.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

roughnessMap : Texture

Cette propriété définit une texture permettant de contrôler la rugosité spéculaire du matériau.

specularAmount : real

Cette propriété permet de contrôler l'intensité de la réflectivité spéculaire (reflets et lueurs).

La plage de valeurs est comprise entre [0,0 ; 1,0]. La valeur par défaut est 1.0.

Remarque : pour les matériaux non diélectriques (métaux), cette propriété n’a aucun effet.

Remarque : cette propriété n’affecte pas l’ specularReflectionMap, mais influe sur la quantité de reflets provenant des é SceneEnvironment::lightProbe s de la scène.

specularChannel : enumeration [since 6.8]

Cette propriété définit le canal de texture utilisé pour lire la valeur de couleur spéculaire à partir de specularMap. Pour utiliser un seul canal de texture comme couleur, vous devez activer l'option « specularSingleChannelEnabled ». La valeur par défaut est Material.R.

ConstanteDescription
Material.RLire la valeur à partir du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

Cette propriété a été introduite dans Qt 6.8.

specularMap : Texture

Cette propriété définit une texture RVB permettant de moduler l'intensité et la couleur de la réflectance spéculaire sur toute la surface du matériau. Ces valeurs sont multipliées par l'specularAmount.

Remarque : la carte spéculaire sera ignorée à moins que le matériau ne soit diélectrique.

specularReflectionMap : Texture

Cette propriété définit une texture utilisée pour les reflets spéculaires sur le matériau.

Elle est généralement utilisée pour effectuer un mappage d’environnement : lorsque le modèle pivote, la texture donne l’impression de refléter l’environnement. Pour que cela fonctionne comme prévu, la propriété « mappingMode » de la texture doit être définie sur « Texture.Environment ». Les textures de réflexion spéculaire constituent un moyen simple d’obtenir un rendu de haute qualité à un coût relativement faible.

Remarque : associer une light probe à l’ SceneEnvironment, et donc s’appuyer sur un éclairage basé sur des images, permet d’obtenir des effets de réflexion environnementale similaires. Les sondes de lumière constituent toutefois une solution conceptuellement différente et, en termes de performances, potentiellement plus coûteuse. Chaque approche a ses propres utilisations spécifiques, et le choix de celle à utiliser doit être déterminé au cas par cas. En ce qui concerne la texture définie dans la propriété, specularReflectionMap présente un avantage, car elle n’impose aucune limitation et prend en charge tous les types de textures, y compris celles dont les données proviennent d’une sous-scène d’ Qt Quick via sourceItem.

Remarque : les imagesnettes donnent à votre matériau un aspect très brillant ; plus vous floutez votre image, plus votre matériau paraîtra doux.

Voir également Texture::mappingMode.

specularSingleChannelEnabled : bool [since 6.8]

Lorsque cette propriété est activée, le matériau utilise la valeur unique de la propriété « specularChannel » de l’objet « specularMap » comme valeur RVB. La valeur par défaut est « false ».

Cette propriété a été introduite dans Qt 6.8.

specularTint : real

Cette propriété définit dans quelle mesure la couleur de base contribue aux reflets spéculaires.

Remarque : cette propriété ne s'applique qu'aux matériaux diélectriques.

thicknessChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire la valeur d'épaisseur à partir de transmissionMap. La valeur par défaut est Material.G.

ConstanteDescription
Material.RLit la valeur du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

thicknessFactor : real

Cette propriété définit l'épaisseur du volume situé sous la surface. Contrairement à de nombreuses autres propriétés de PrincipledMaterial, la valeur définie dans « thicknessFactor » est comprise entre 0,0 et +∞ pour l'épaisseur dans l'espace de coordonnées du modèle. Une valeur de 0,0 signifie que le matériau est à paroi mince. La valeur par défaut est 0.0

thicknessMap : Texture

Cette propriété définit une texture utilisée pour déterminer l'épaisseur d'un volume de matériau. La valeur de « thicknessFactor » sera multipliée par la valeur lue à partir de cette texture.

transmissionChannel : enumeration

Cette propriété définit le canal de texture utilisé pour lire le pourcentage de transmission à partir de transmissionMap. La valeur par défaut est Material.R.

ConstanteDescription
Material.RLit la valeur du canal R de la texture.
Material.GLit la valeur du canal G de la texture.
Material.BLit la valeur du canal B de la texture.
Material.ALit la valeur du canal A de la texture.

transmissionFactor : real

Cette propriété définit le pourcentage de lumière qui traverse la surface du matériau. La valeur par défaut est 0.0

transmissionMap : Texture

Cette propriété définit une texture utilisée pour déterminer le pourcentage de lumière transmise à travers la surface. La valeur de « transmissionFactor » sera multipliée par la valeur lue à partir de cette texture.

vertexColorAlphaMask : enumeration [since 6.8]

Cette propriété définit le canal alpha de la couleur des sommets utilisé comme masque spécifié. La valeur correspond à une combinaison binaire d'indicateurs. La valeur par défaut est « PrincipledMaterial.NoMask ».

ConstanteDescription
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

Cette propriété a été introduite dans Qt 6.8.

vertexColorBlueMask : enumeration [since 6.8]

Cette propriété définit le canal bleu de la couleur des sommets utilisé comme masque spécifié. La valeur correspond à une combinaison binaire d’indicateurs. La valeur par défaut est « PrincipledMaterial.NoMask ».

ConstanteDescription
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

Cette propriété a été introduite dans Qt 6.8.

vertexColorGreenMask : enumeration [since 6.8]

Cette propriété définit le canal vert de la couleur des sommets utilisé comme masque spécifié. La valeur correspond à une combinaison binaire d’indicateurs. La valeur par défaut est « PrincipledMaterial.NoMask ».

ConstanteDescription
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

Cette propriété a été introduite dans Qt 6.8.

vertexColorRedMask : enumeration [since 6.8]

Cette propriété définit le canal rouge de la couleur des sommets utilisé comme masque spécifié. La valeur correspond à une combinaison binaire d’indicateurs. La valeur par défaut est « PrincipledMaterial.NoMask ».

ConstanteDescription
PrincipledMaterial.NoMask.
PrincipledMaterial.ClearcoatAmountMask.
PrincipledMaterial.ClearcoatRoughnessAmountMask.
PrincipledMaterial.ClearcoatNormalStrengthMask.
PrincipledMaterial.HeightAmountMask.
PrincipledMaterial.MetalnessMask.
PrincipledMaterial.RoughnessMask.
PrincipledMaterial.NormalStrengthMask.
PrincipledMaterial.OcclusionAmountMask.
PrincipledMaterial.SpecularAmountMask.
PrincipledMaterial.ThicknessFactorMask.
PrincipledMaterial.TransmissionFactorMask.

Cette propriété a été introduite dans Qt 6.8.

vertexColorsEnabled : bool [since 6.5]

Lorsque cette propriété est activée, le matériau utilise les couleurs de sommets du maillage. Celles-ci sont multipliées par toute autre couleur spécifiée pour le matériau. La valeur par défaut est « true ».

Cette propriété a été introduite dans Qt 6.5.

vertexColorsMaskEnabled : bool [since 6.8]

Lorsque cette propriété est activée, le matériau utilise les couleurs de sommet du maillage comme masque pour diverses propriétés, par exemple RoughnessAmount, SpecularAmount, etc. La valeur par défaut est « false ».

Cette propriété a été introduite dans Qt 6.8.

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