Partager via


Comment : créer un nuanceur Lambert de base

Ce document montre comment utiliser le concepteur Shader et le langage DGSL (Directed Graph Shader Language) pour créer un nuanceur d'éclairage qui implémente le modèle d'éclairage Lambert classique.

Ce document démontre les activités suivantes :

  • Ajouter des nœuds à un graphique shader

  • Déconnexion des nœuds

  • Connexion de nœuds

Le modèle d'éclairage Lambert

Le modèle d'éclairage Lambert incorpore un éclairage ambiant et directionnel pour ombrer des objets dans une scène 3D.Les composants ambiante fournissent un niveau de l'illumination de base dans la scène 3D.Les composants directionnels fournissent l'illumination supplémentaire (loin) des sources de lumière de direction.L'illumination ambiante affecte toutes les surfaces de la scène de façon égale, indépendamment de leur orientation.Pour une surface donnée, il s'agit du produit de la couleur ambiante de la surface et de la couleur, ainsi que de l'intensité de l'éclairage ambiant dans la scène.L'éclairage directionnel affecte chaque surface de la scène différemment, selon l'orientation de la surface par rapport à la direction de la source de lumière.Il s'agit d'un produit de la couleur et l'orientation diffuses de la surface, et la couleur, la profondeur, et le sens des sources de lumière.Les surfaces qui sont directement orientées vers la source de lumière reçoivent la contribution maximale et celles qui sont éloignées ne reçoivent pas de contribution.Sous le modèle d'éclairage de Lambert, le composant ambiant et un ou plusieurs composants directionnels sont combinés pour déterminer le total répandent la contribution de couleur pour chaque point sur l'objet.

Avant de commencer, assurez-vous que la fenêtre Propriétés et le Boîte à outils sont affichés.

Pour créer un shader Lambert

  1. Créez un nuanceur de DGSL pour utiliser.Pour plus d'informations sur l'ajout d'un nuanceur de DGSL à votre projet, consultez la section de Mise en route dans Concepteur Shader.

  2. Déconnectez le nœud Couleur du point du nœud Couleur finale .Choisissez le terminal RVB du nœud Couleur du point, puis choisissez Rompre les liaisons.Laissez le terminal Alpha connecté.

  3. Ajoutez un nœud Lambert au graphique.Dans Boîte à outils, sous Utilitaire, sélectionnez Lambert et faites glisser cette option sur l'aire de conception.Le nœud de Lambert calcule le total répandent la contribution de couleur du pixel, selon les paramètres ambiante et diffus d'éclairage.

  4. Connectez le nœud Couleur du point au nœud Lambert .En mode Sélectionner, déplacez le terminal RVB du nœud Couleur du point à terminal Couleur diffuse du nœud Lambert .Cette connexion fournit au nœud de Lambert la couleur est diffusé interpolée de pixel.

  5. Connectez la valeur de couleur calculée à la couleur finale.Déplacez le terminal Sortie du nœud Lambert à terminal RVB du nœud Couleur finale .

L'illustration suivante montre le graphique de nuanceur terminé et un aperçu du nuanceur appliqué à un modèle de théière.

[!REMARQUE]

Pour mieux illustrer l'effet du nuanceur dans cette illustration, une couleur orange a été spécifiée à l'aide de le paramètre MaterialDiffuse du nuanceur.Un jeu ou une application peut utiliser ce paramètre pour fournir une seule valeur de couleur de chaque objet.Pour plus d'informations sur les paramètres matériels, consultez la section rendu un aperçu de shaders dans Concepteur Shader.

Graphique du nuanceur et un aperçu de ses effets.

Certaines formes peuvent fournir de meilleurs aperçus pour certains nuanceurs.Pour plus d'informations sur la façon d'afficher un aperçu des shaders dans le concepteur shader, consultez la section rendu un aperçu de shaders dans Concepteur Shader.

L'illustration suivante montre le shader décrit dans ce document appliqué à un modèle 3D.

Éclairage Lambert appliqué à un modèle.

Pour plus d'informations sur l'application d'un nuanceur à un modèle 3D, consultez Comment : appliquer un nuanceur à un modèle 3D.

Voir aussi

Tâches

Comment : appliquer un nuanceur à un modèle 3D

Comment : exporter un nuanceur

Comment : créer un nuanceur Phong de base

Concepts

Concepteur Shader

Autres ressources

Nœuds du concepteur Shader