Un matériau interactif réagit lorsqu'il intersecte un autre maillage ou se trouve tout près d'un autre maillage. C'est le champ de distance qui est à l'origine de cet effet.
Voici trois façons de créer un matériau réactif :
-
utiliser la distance pour créer un masque qui change la couleur du maillage,
-
utiliser une onde sinusoïdale qui cause des ondulations à la surface du maillage, à l'endroit où les deux maillages s'intersectent, et
-
utiliser un masque vectoriel pour tirer la surface d'un maillage vers un autre ou couvrir celle de l'autre.
Le nœud DistancetoNearestSurface ne fonctionne que sur les plateformes où des champs de distance sont activés. Par conséquent, le matériau pourrait ne pas fonctionner comme prévu sur des ordinateurs et téléphones à faible performance, le calcul du champ de distance constituant parfois un goulot d'étranglement en raison des champs à haute résolution, voire une tâche presque impossible à cause des dégénérescences dans les maillages d'entrée.
Il est donc conseillé d'utiliser la ShadingPathSwitch pour forcer les shaders dans le nœud DistancetoNearestSurface à fonctionner conformément à la configuration sur les plateformes mobiles et les ordinateurs à faible performance.
Tout d'abord, créez un matériau qui change de couleur lorsqu'il intersecte un autre maillage :
-
Créez un nouveau matériau dans le navigateur de contenu et double-cliquez sur la vignette de matériau pour ouvrir l'éditeur de matériau.
-
Créer les nœuds suivants :
-
Nœud DistancetoNearestSurface
-
Nœud ShadingPathSwitch
-
Nœud Divide
-
Nœud Saturate
-
Nœud OneMinus
-
Nœud Time
-
Nœud Sine
-
Nœud Add
-
Nœud VertexNormalWS
-
Nœud Mask
-
3 nœuds Multiply
-
-
Faites glisser le nœud DistancetoNearestSurface et reliez-le à l'entrée Par défaut du nœud ShadingPathSwitch.
-
Sélectionnez le nœud Divide et remplacez la valeur de l'entrée ConstB par 50,0. Cela détermine la distance entre les objets pour que les effets aient lieu.
-
Faites glisser le nœud Divide et reliez-le à l'entrée Mobile de ShadingPathSwitch. Cela permettra au masque d'ombrage de fonctionner correctement sur toutes les plateformes.
-
Faites glisser le nœud ShadingPathSwitch et branchez-le dans le nœud Saturate. Cela sature la couleur sur le maillage.
-
Faites glisser le nœud Saturate et reliez-le au nœud OneMinus. Cela inverse les shaders sur le maillage.
-
Faites glisser le nœud OneMinus et reliez-le à l'entrée Couleur de base du nœud racine du matériau.
Cela crée la base de configuration du champ de distance avec une représentation mathématique de la distance entre les objets. Les shaders créent un effet de masque sur le maillage. Faites un essai sur un maillage en créant un contact entre deux maillages pour voir comment le matériau réagit.

Vous remarquerez que le matériau crée une ligne autour de la forme de l'automobile au fur et à mesure qu'il s'en rapproche.
Effet ondulé
Maintenant, créez une seconde configuration du matériau réactif :
-
Faites glisser le nœud Time et reliez-le à l'entrée B du nœud Add.
-
Faites glisser le nœud Add et reliez-le au nœud Sine.
-
Faites glisser le nœud Sine et reliez-le à l'entrée B du premier nœud Multiply.
-
Sélectionnez et développez le nœud Sine et remplacez la valeur Période par 0,2.
-
Faites glisser le nœud OneMinus et reliez-le à l'entrée A du premier nœud Multiply.
-
Faites glisser le nœud Multiply et reliez-le à l'entrée Couleur de base du nœud racine du matériau. Le lien entre le nœud OneMinus et le nœud racine du matériau sera rompu.
Cette configuration applique de la couleur au maillage qui est maintenant réactif, en utilisant la configuration précédente du champ de distance. Le matériau interagit avec l'environnement et les maillages qui l'entourent. Lorsque le maillage en croise un autre, la surface du matériau ondule.

Cette configuration est couramment utilisée pour créer de l'eau.
Effet enveloppant
Maintenant, créons une troisième configuration de matériau réactif :
-
Faites glisser le nœud OneMinus et reliez-le à l'entrée Couleur de base du nœud racine du matériau. Le lien entre le premier nœud Multiply et le nœud racine du matériau sera rompu.
-
Faites glisser le nœud VertexNormalWS et reliez-le au nœud Mask.
-
Faites glisser le nœud Mask et reliez-le à l'entrée A du second nœud Multiply.
-
Sélectionnez et développez le deuxième nœud Multiply, puis remplacez la valeur d'entrée de B par 50,0.
-
Faites glisser le deuxième nœud Multiply et reliez-le à l'entrée B du troisième nœud Multiply.
-
Faites glisser le nœud OneMinus de la première configuration et reliez-le à l'entrée A du troisième nœud Multiply.
-
Faites glisser le troisième nœud Multiply et reliez-le à l'entrée Décalage de position dans le monde du nœud racine du matériau.

Voici à quoi doit ressembler la deuxième configuration.

Remarquez que le matériau dans la fenêtre d'aperçu apparaît maintenant avec des pointes. En cas d'application au maillage, la forme du maillage change également. Lorsque le maillage se rapproche de l'automobile, le matériau force le maillage à s'enrouler autour du véhicule.
