Stínování v Open Rails - aneb využít engine OR naplno

#25
Kdo chce mít kvalitnější stíny a hlavně více stínů v OR MonoGame, ať zkusí úpravu, na kterou jsem přišel náhodou. Jestli funguje pod standardním OR, to jsem nezkoušel. Na výkon nemá vliv.
Obrázek vlevo je bez úpravy a vpravo s úpravou. Stíny jsou výraznější, je jich více a mapují objekty kolem sebe. Všiměte si horního krytu lampy - bez úpravy jen šedivá nevýrazná a s úpravou vidíme stínování.

V OR adresáři Content najděte soubor ShadowMap.fx. Tam najděte 2 řádky Out.TexCoord_Depth.z = Out.Position.z;
Změňte je na Out.TexCoord_Depth.z = Out.Position.z - 0.001; a uložte a je to.

1.jpg
 

Dan J.

Strojvedoucí
#28
Do regitrů nelezu, nehrabu se ve věcech, kterým nerozumím. :) Nejsem programátor a servis PC mi dělá kámoš, co se tím živí. Ale spíš by mne zajímalo jestli nelze ošéfovat mizení stínů (viz. video) a zdá se mi, že teď OR vykreslije i zvláštně, neboli zvýrazňuje víc chyby stínování na trati (viz. obrázek).
paskov stíny.jpg
 
#29
Stíny u tebe nejsou tolik tvarově výrazné, protože máš nastaveno nízké rozlišení stínové mapy. To je ten parametr v registrech ShadowMapResolution.
Musí být aspoň na hodnotě 4096. To se mi zdá jako kompromis mezi kvalitou a velikostí mapy, protože čím vyšší, tím je to pro HW náročnější na zpracování.
To mizení dělají zřejmě LOD-y té stínové mapy. Zatím nevím, co je určuje. Bude to něco přímo v kódu.
 

Dan J.

Strojvedoucí
#30
Ahoj Icik, zeptám se tedty jako totální lajk, to je taky v tm souboru, nebo jak se k těm souborům co jsou popsány výš dostanu. :)
Dan
 
#31
Postup je zde:

1. spustit přes nabídku Start ve Windows aplikaci regedit.exe
2. najít pod HKEY_CURRENT_USER - Software -OpenRails složku "ORTS"
3. stisknout pravé tlačítko myši a vybrat z menu Nový - Hodnota QWORD (64bitová) a tím se vytvoří nová hodnota
4. novou hodnotu přejmenovat na "ShadowMapResolution"
5. tuto hodnotu dvojklikem změnit na Údaj hodnoty na 1000 (to bude v desítkové soustavě 4096)
 
#32
Zkouším různé kombinace a nejlepší stíny bez dramatického dopadu na výkon je v tomto nastavení:

ShadowMapCount 4 (velice důležité, jinak stíny budou jak obdélníčky)
ShadowMapBlur 1 (rozmazává okraj stínů a tudíž vytváří dojem "měkkých" okrajů kolem stínů)
ShadowMapResolution 1000 (to bude v desítkové soustavě 4096, velice důležité pro detaily stínů)
ShadowMapDistance 500 (velice důležitá hodnota, jen při této hodnotě jsou stíny nejkomplexnější))

Jiné hodnoty dávají horší výsledky, co se týče kvality.
 

Venny

Posunovač
#33
Iciku, díky za nové postřehy. ;)
Nelze se ovšem nezeptat, zda je reálné, aby se změny objevily v některé další oficiálně vydané verzi MG-OR? Upravovat znovu a znovu každou další verzi včetně jiných vychytávek a úprav (jejichž počet roste) je poněkud nepohodlné. I pro ty, kteří jsou schopni tyto úpravy realizovat.
 
#34
Pro ty, co neví jak vytvořit zápisy v registrech, jsem vytvořil jednoduchý automatický spouštěč. Stačí ho jen spustit a registr se sám upraví. Podotýkám, že je to vytvořeno pod WINDOWS 10. Starší nemám otestováné.

https://uloz.to/!LkJ9miTX5SSC/or-monogame-reg

Soubor s upraveným "ShadowMap.fx" si můžete každý zálohovat a při vydání nové verze tak znovu přepsat. Není to oficiální úprava a je to jen pro testování. Pokusím se to navrhnout vývojářům, aby to začlenili. Ale to nezaručuju. Zatím jen pro testování.
OR je neustále ve vývoji a do té doby budou pořád nějaké novinky.
 
Nahoře