Question

Je suis en train de rendre 6 lampes spot pour créer un point de lumière pour un algorithme de mise en correspondance d'ombre.

Je ne sais pas si je fais ce droit, je suis plus ou moins suivi les instructions ici lors de la configuration mon point de vue et des matrices de projection, mais le résultat final ressemble à ceci:

text alt

Les zones blanches sont des parties qui sont couvertes par l'un des 6 cartes d'ombre, les zones sombres sont celles qui ne sont pas couverts par les shadowmaps. Il est évident que je n'ai pas de problème avec les théières et les boîtes ayant leurs ombres projetées sur la scène, mais comme vous pouvez voir les 6 cartes d'ombre ont des angles morts. Est-ce comment une carte d'ombre est censé cubes regarder? Il ne ressemble pas à un shadowmap d'une source lumineuse ponctuelle ...

Était-ce utile?

La solution

En fait, vous pouvez régler vos six points pour avoir des cônes qui remplissent parfaitement chaque face de votre cubemap. Vous pouvez y parvenir en réglant l'ouverture de chaque cône pour créer un cercle circonscrit autour de chaque face cubemap. Dans ce cas, vous n'avez pas à vous soucier de chevauchement, puisque le serait chevauchement parties sont hors de la zone des visages.

En d'autres termes:. Ajuster les lumières de la matrice de projection » FOV, donc il ne sera pas la vue qui frustum comprend le cône de lumière, mais le cône comprendra la vue de cône tronqué

La mise en œuvre d'un ensemble voir cet article .

Autres conseils

Qu'est-ce que vous voyez ici sont un cercle et deux hyperboles - sections coniques - exactement le résultat que vous pourriez attendre si vous avez pris un double cône fin et il a recoupé avec un plan

.

Ce calcul peut sembler retiré de la situation, mais il explique votre problème. Un projecteur crée un cône de lumière, et vous ne pouvez pas remplir entièrement un espace solide avec un tas de cônes provenant du même point. (Je vous suggère de rouler un tas de morceaux de papier et de les coller ensemble aux points de l'essayer.)

Cependant, comme vous obtenez loin de l'origine de votre simulation point source, les cônes convergent vers leurs assymptotes, et il y a un écart infinitésimal étroite à la lumière.

L'une des options pour résoudre ce problème est de changer l'orientation des cônes de sorte qu'ils se chevauchent légèrement - cela va créer des zones surexposées, mais la surexposition ne deviendra évident que vous obtenez plus loin. Tant que tous vos objets sont près de la source de lumière ponctuelle, cela pourrait ne pas être beaucoup d'un problème.

Une autre option consiste à déplacer le centre de toutes les lumières beaucoup plus proches de leurs sources. De cette façon, ils avaient convergeant à leurs assymptotes plus rapidement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top