nowe exe:
https://ci.appveyor.com/project/Milek7/maszyna/build/30/artifactsściągnąć odpowiednie exe i paczkę z shaderami
Jest nowy fajowy ficzer, CIENIE. Konfiguruje się je parametrem shadowtune:
shadowtune <rozdzielczość> <promień projekcji> <głębokość projekcji> <odległość od obserwatora>
Gdzie: <rozdzielczość> - szerokość i wysokość tekstury na jaką renderuje się shadowmapa. żeby miało przyzwoitą jakość to ja sobie ustawiam 4096. (to zajmuje sporo vramu, np. 2048 to 16MiB, 4096 to 64MiB, 8192 to 256MiB)
<promień projekcji> - jak szeroka ma być projekcja przez którą rzucane jest światło. poza obszarem projekcji cienie nie są rzucane. oczywiście żeby zwiększyć projekcję bez utraty jakości należy też zwiększyć rozdzielczość shadowmapy. ja ustawiłem sobie na 250
<głębokość projekcji> - tutaj można sobie ustawić dużo, jednym ograniczeniem jest dokładność shadowmapy czyli 32bitowego floata. jeżeli będzie za mało to obiekty które są niżej nie będą rzucać cienia, widoczne przy wylatywaniu kamerą w górę. ja ustawiam na 400.
<odległość od obserwatora> - odległość punktu projekcji światła od obserwatora w kierunku słońca. jeżeli jest za mało to obiekty które są niżej nie będą rzucać cienia, a przy wysokich kątach padania światła projekcja będzie się wrzynać w teren i ograniczać efektywny promień projekcji. żeby miało sens to musi być mniejsze od głębokości projekcji, ja ustawiam na 300
Nie zmieniałem nic innego w rendererze, więc takie bugi jakie były to zostały. Dodany jest tylko prosty opisany powyżej shadowmapping z wieloma wadami:
- kabina nie rzuca cienia (na to będzie trzeba osobną shadowmapę, z małym zasięgiem żeby była dobra jakość i bez PCF żeby nie było rozmycia)
- tylko oświetlenie dzienne rzuca cień, światła lokomotywy bez zmian
- nie ma CSM, więc żeby była dobra jakość z bliska to trzeba podkręcać rozdzielczość shadowmapy, jednocześnie niepotrzebnie zwiększając rozdzielczość gdzieś heń daleko.
- półprzeźroczyste tekstury zachowują się tak jakby były całkowicie przeźroczyste (do tego trzeba dorzucić drugi kanał do shadowmapy, nie wiem czy jest taka potrzeba?)
Jak ktoś chce to niech się bawi, a ja robię sobię przerwę na dwa tygodnie, później wrócę do poprawiania cieni i naprawy renderera.