Les shaders utilisés pour le rendu non réaliste en 3D simulent souvent l’ombre par des techniques issuent de la bande dessinée comme les trames ou les hachures.
Si l’on ne veut pas utiliser ces effets en compositing, qui donnent l’impression que les objets bougent sous une trame fixe, il nous faut appliquer la texture à l’objet.
le problème de base.
Des trames ou des traits génèrent parfois des interférences visuelles quand, s’éloignant, ils deviennent trop petits ou se chevauchent à l’écran, on apelle cela le moirage.
Exemple avec une texture algorithmique faite de points simulant une trame, plus l’objet recule, plus les points se rapetissent augmentant d’autant le risque de moirage.
la solution du scaling.
Si l’on agrandit la texture elle même pour compenser, on maîtrise la taille des points qui restent suffisamment gros, mais l’objet semble glisser dans une mer de points.
la taille du point.
Une solution consiste à grossir la taille des points, ceux-ci semblent se rapprocher les uns des autres, couvrant plus la surface de l’objet, l’effet peut être atténué en donnant une couleur grise aux points.
Pour gérer la taille du point, on couple une ramp avec la sortie Distance d’une Voronoi texture.
Automatiser.
Pour permettre l’animation de la taille des points, on remplace la ramp par un multiply add.
Puis on récupère la distance à la caméra, avec Map Range on transforme les positions les plus éloignées et plus proches de l’objet à la caméra par les valeurs donnant les bonnes tailles de points.