Partager via


Nœuds constants

Dans le Concepteur Shader, les nœuds constants représentent les valeurs littérales et les attributs de vertex interpolés dans les calculs du nuanceur de pixels.Comme les attributs des sommets sont interpolées, et sont donc différents pour chaque pixel, chaque instance du nuanceur de pixels reçoit une version différente de la constante.Cela attribue à chaque pixel une apparence unique.

Interpolation des attributs des sommets

L'image d'une scène 3D dans un jeu ou une application est effectuée en transformant mathématiquement un certain nombre d'objets, définis par les vertex, les attributs de vertex et les définitions de primitives, dans les pixels affichés à l'écran.Toutes les informations nécessaires pour donner à un pixel son apparence unique sont fournies par le biais des attributs de sommet, qui sont fusionnés ensemble en fonction de la proximité du pixel avec les différents sommets qui composent sa primitive.Une primitive est un élément de rendu de base ; autrement dit, une forme simple telle qu'un point, une ligne ou un triangle.Un pixel qui est très proche d'un des sommets reçoit des constantes qui sont presque identiques à ce sommet, mais un pixel espacé de façon uniforme entre tous les sommets d'une primitive reçoit des constantes correspondant à la moyenne de ces sommets.En programmation graphique, les constantes que les pixels reçoivent sont dites interpolées.Le fait de fournir des constantes aux pixels de cette manière produit une très bonne qualité visuelle et réduit en même temps considérablement la bande passante nécessaire et l'encombrement de la mémoire.

Bien que chaque instance du nuanceur de pixels ne reçoive qu'un seul jeu de valeurs de constante et ne puisse pas modifier ces valeurs, les différentes instances du nuanceur de pixels reçoivent des jeux de constante différents.Cette conception permet à un programme de nuanceur de produire une sortie de couleur différente pour chaque pixel de la primitive.

Référence à une constante de nœud

Nœud

Détails

Propriétés

Vecteur d'appareil photo

Vecteur qui s'étend du pixel actuel jusqu'à l'appareil photo dans l'espace universel.

Vous pouvez l'utiliser pour calculer les reflets dans l'espace universel.

Sortie

Output: float3

Vecteur du pixel actuel jusqu'à l'appareil photo.

Aucun

Constante de couleur

Valeur de couleur de constante.

Sortie

Output: float4

Valeur de la couleur.

Sortie

Valeur de la couleur.

Constante

Valeur scalaire de constante.

Sortie

Output: float

Valeur scalaire.

Sortie

Valeur scalaire.

Constante 2D

Constante de vecteur à deux composants.

Sortie

Output: float2

Valeur vectorielle.

Sortie

Valeur vectorielle.

Constante 3D

Constante de vecteur à trois composants.

Sortie

Output: float3

Valeur vectorielle.

Sortie

Valeur vectorielle.

Constante 4D

Constante de vecteur à quatre composants.

Sortie

Output: float4

Valeur de la couleur.

Sortie

Valeur vectorielle.

Position normalisée

Position du pixel actuel, exprimée sous la forme des coordonnées normalisées du périphérique.

Les valeurs des coordonnées x et y sont comprises dans la plage [- 1, 1], la valeur de la coordonnée z est comprise dans la plage [0, 1] et le composant w contient la valeur de profondeur du point dans l'espace d'affichage. w n'est pas normalisé.

Sortie

Output: float4

Position du pixel actuel.

Aucun

Couleur du point

Couleur diffuse du pixel actuel, qui est une combinaison de la couleur diffuse du matériel et des attributs de couleur du vertex.

Sortie

Output: float4

Couleur diffuse du pixel actuel.

Aucun

Profondeur de point

Profondeur du pixel actuel dans l'espace d'affichage.

Sortie

Output: float

Profondeur du pixel actuel.

Aucun

Profondeur de point normalisée

Profondeur du pixel actuel, exprimée sous la forme des coordonnées normalisées du périphérique.

La valeur du résultat est comprise dans la plage [0, 1].

Sortie

Output: float

Profondeur du pixel actuel.

Aucun

Position à l'écran

Position du pixel actuel, exprimée sous la forme des coordonnées d'écran.

Les coordonnées d'écran sont basés sur la fenêtre d'affichage actuelle.Les composants x et y contiennent les coordonnées de l'écran, le composant de z contient la profondeur normalisée sur une plage de [0, 1] et le composant w contient la valeur de profondeur dans l'espace d'affichage.

Sortie

Output: float4

Position du pixel actuel.

Aucun

Normale à la surface

Vecteur normal de surface du pixel actuel dans l'espace d'objets.

Vous pouvez l'utiliser pour calculer les contributions de l'éclairage et les reflets dans l'espace d'objets.

Sortie

Output: float3

Normale de surface du pixel actuel.

Aucun

Vecteur d'appareil photo de l'espace de tangente

Vecteur qui s'étend du pixel actuel jusqu'à l'appareil photo dans l'espace tangent.

Vous pouvez l'utiliser pour calculer les reflets dans l'espace tangent.

Sortie

Output: float3

Vecteur du pixel actuel jusqu'à l'appareil photo.

Aucun

Direction de la lumière de l'espace de tangente

Vecteur qui définit la direction dans laquelle la lumière est projetée à partir d'une source lumineuse dans l'espace tangent du pixel actuel.

Vous pouvez l'utiliser pour calculer les contributions d'éclairage et spéculaires dans l'espace tangent.

Sortie :

Output: float3

Vecteur du pixel actuel à une source de lumière.

Aucun

Normale universelle

Vecteur normal de surface du pixel actuel dans l'espace universel.

Vous pouvez l'utiliser pour calculer les contributions de l'éclairage et les reflets dans l'espace universel.

Sortie

Output: float3

Normale de surface du pixel actuel.

Aucun

Position universelle

Position du pixel actuel dans l'espace universel.

Sortie

Output: float4

Position du pixel actuel.

Aucun