SarpedCirak

Yeni üye
30 May 2016
13
0
0
(34) İstanbul Anadolu
Merhaba herkese

Bildiğimiz üzere Unreal engine gibi oyun motorları bize realtime görseller vermesi için geleneksel 3D render motorları mantığından çok farklı çalışıyor. Bende 13 senedir 3D ile uğraşıp son 4 aydır  Unreal Engine'e ilgi duyup vakit harcayan biriyim. Aldığım renderlardan bir nebze mutluyum ama bu mutluluk Post Process'in içinden SSR'ı açana kadar.

SSR_0  ( https://postimg.org/image/3p5eyaaq9/ )
   

SSR_1  ( https://postimg.org/image/edgmj4035/ )


Buradan da anlaşıldığı gibi baharatlık, kutular ve davlumbazın etkileşim yaptığı objelerin üzerinde kalitesi düşük, tatmin etmeyen yansımalar alıyorum ki buna yansıma dersek. Sahneyi kurtaran bana kalırsa sadece Ambient Occlusion. Sanki bir değer varmış %100 olması gereken yerde %20 gibi bir değerde bırakmışım gibi. (Bu arada PPV'nin içinde bulunan SSR sekmesinde ki değerlerin ikisi de %100) 
(Aynı zamanda bunu düşündüren şey ise şu cümle: There are 3 quality levels with 2 parameters which define the quality of reflections)
Almanya'da ikamet eden genç arkadaşımız (bilmeyen UET topluluğu üyelerinin yararlanabileceği bir blog) bu soruna çözüm bulmuş.
Link: https://oliverm-h.blogspot.com.tr/2014/08/ue4-improving-ssr.html#comment-form
Şimdi siz değerli meslektaşlarıma sorum şu; ScreenSpaceReflections.usf dosyasındaki değerleri değiştirdim ancak sonuç değişmedi. Bunu bu genç dostumuz nasıl yapmış olabilir. Almak istediğim yansıma referansı şunun gibi birşey
Expected  ( https://postimg.org/image/yzb37gjlz/ )

Bir diğer husus ise fark ettiniz mi bilemiyorum ancak SSR intensity parametresini açtığınızda kadrajın kenarlarına doğru yansımaların yok olduğu. Bunun çözümü sanıyorum yok henüz.

Değerli vaktinizi ayırıp yorum yaptığınız için teşekkür ederim.
 
Sorunun temeli SSR'ın çalışma prensibi ve ne kadar uğraşsanız da Oliver'ın verdiği örnekten ötesine geçemezsiniz, o da performansı baya etkiliyor. SSR adı üzerinde ekranda görünen pixelleri yansıma olarak verir(reflection capture sadece statik objeleri yansıma olarak verdiği için aslında SSR dinamik objelerin yansımalarını sağlamak için daha kullanışlıdır.) Durum böyle olunca görünen ve görünmeyen alanlar arası absürd bir geçiş olmaması için SSR bir nevi blur uygular, o blur kalitesi de blogda gösterildiği gibi bir yere kadar arttırılabiliyor. Nihayetinde son olarak bahsettiğiniz gibi sadece SSR ile ekran kenarlarındaki kararmanın önüne geçemiyorsunuz. Bu tür mimari sunumlarda çoğu obje statik olduğu için reflection capture kullanmak bu tür SSR sorunlarını giderebiliyor ama o da yetmiyor ve ben illa o tezgahta mükemmel yansımalar istiyorum derseniz scene capture aktörleri kullanıp render target texture'ı oluşturmayı ve tezgah materyali içinden bu işi halletmeyi deneyebilirsiniz.
 
Çok teşekkür ederim verdiğiniz bilgiler için Jacky. Oliver'ın blogunda yazılan ScreenSpaceReflections.usf dosyasındaki bilgilerin hepsini değiştirmeme rağmen ( değerlerin nasıl etki ettiğini görmek için print screen alaraktan pek tabiki ) bir fark göremedim. Acaba orada ki değerleri değiştirdikten sonra UE4'ün içinden de bir şekilde bu ayarları/değerleri aktif etmenin bir yolu mu var? Tekrar teşekkür ederim.
 
Neden çalışmadığına dair bir fikrim yok. Tek yapmanız gereken editör kapalıyken .USF içinde gereken değişiklikleri yapmak. SSR_Quality == 4 ü değiştirip ardından ConsoleVariables.INI dosyası içine son satıra r.ssr.quality=4 komutunu ekleyip, PPV içinde de SSR Quality değerini 100 yapıp tekrar deneyin olmazsa.
 
Jacky Çok teşekkür ederim ConsoleVariables.ini dosyasında bir şey değiştirmem gerektiğini biliyordum ancak Oliver kardeşimiz yazmamış. Unreal Engine'e o kadar hakim olamadığımız için başarılı olamamıştım. Tekrar teşekkür ederim yardımların için.

Edit: Çalıştı tam istediğim gibi reflectionlar vermeye başladı engine.