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