Soft Shadow Mapping en GLSL


Une des fonctionnalité qui manquer au moteur était bien sure les ombres porté, un prototype fonctionnelle est désormais disponible, mais il géré qu’une seul lumière directionnelle, le résultat est la sans beaucoup de bug visuelle, ajouter à cela la possibilité d’appliquer un effet de flou pour adoucir les bords.

space-20130428-1 space-20130428-2 space-20130428-3

La technique

La technique utiliser ici n’est pas du tout optimiser et présente un bug visuelle lorsque la composant spéculaire est activé, néaumoin c’est début de prototype que je vais optimiser et améléorer

Pour générer les ombre porté avec la technique du shadow mapping, on place la caméra d’abord à la position de la lumière

Ensuit on dessine la scène dans un FrameBuffer (FBO) appart pour seulement remplir le buffer de profondeur (Z-Depth), donc on désactive la couleur avec quelque paramètres additionnelles pour accélérer le rendue.

Apres cela on remet les matrices initiales !

On dessine la scène une deuxième fois pour généré les ombres avec la vue de la caméra, pour cela un Shader est utiliser qui projet la texture du tampon de profondeur on laissant passer que les fragment que la lumière n’atteint pas !

Enfin on appliquer un léger flou (tout dépend de la résolution de la texture utilisé) pour adoucir les bord.

Quelque liens utiles :


Pas de commentaires pour cette article




Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *