Jump to content

symulacja - rendering Mantra --- długo --- why ? ;)


czaps
 Share

Recommended Posts

Hej

 

Symek orientujesz się może co może być przyczyną długiego renderu w Mantrze szkła per frame ?

Konkretnie chodzi mi o pękające zastawy stołowe z dużą ilością szklanych odłameczków.

Podejrzewam , że przyczyną mogą być teselacje i problemy z interpenetracją szklanej geometrii i wewnętrznych ścianek.

Używam zmodyfikowanego shadera pod szkło dostępnego w SHOPie. Próbowałem rendzic to w kilku "odnogach" Mantry ale czas renderingu podobny czyli marny.

 

Jest jakiś klucz gdzie szukać przyczyny takiego zachowania przy renderze?

Przy innych materiałach leci szybko. Tylko przy szkle jest problem...

 

dzięki z góry

 

czaps

Link to comment
Share on other sites

Hej

 

Symek orientujesz się może co może być przyczyną długiego renderu w Mantrze szkła per frame ?

Konkretnie chodzi mi o pękające zastawy stołowe z dużą ilością szklanych odłameczków.

Podejrzewam , że przyczyną mogą być teselacje i problemy z interpenetracją szklanej geometrii i wewnętrznych ścianek.

Używam zmodyfikowanego shadera pod szkło dostępnego w SHOPie. Próbowałem rendzic to w kilku "odnogach" Mantry ale czas renderingu podobny czyli marny.

 

Jest jakiś klucz gdzie szukać przyczyny takiego zachowania przy renderze?

Przy innych materiałach leci szybko. Tylko przy szkle jest problem...

 

dzięki z góry

 

czaps

Link to comment
Share on other sites

Szukam teraz ogólnie przyczyn dużego noisa na róznych trybach Mantry przy szkle i się zastanawiam czy powodem zasadniczym może być jakość map HDR dla Envo czy jeszcze kilka innych rzeczy w tym także sampling przy samych materiałach np.

Chodzi mi o samo szkło konkretnie w tym momencie bo z nim przy Motion Blurze są jajka u mnie. Na różnych trybach M działą lepiej lub gorzej , najlepiej wychodzi przy raytrayce jakościowo ale render time per frame już nie bardzo ;)

 

pozdro

czaps

Link to comment
Share on other sites

Szukam teraz ogólnie przyczyn dużego noisa na róznych trybach Mantry przy szkle i się zastanawiam czy powodem zasadniczym może być jakość map HDR dla Envo czy jeszcze kilka innych rzeczy w tym także sampling przy samych materiałach np.

Chodzi mi o samo szkło konkretnie w tym momencie bo z nim przy Motion Blurze są jajka u mnie. Na różnych trybach M działą lepiej lub gorzej , najlepiej wychodzi przy raytrayce jakościowo ale render time per frame już nie bardzo ;)

 

pozdro

czaps

 

Musiałbyś załączyć jakąś scenę, która sprawia kłopot. Generalnie, jest kilka spraw do rozważenia:

 

 

  1. Path tracing ma wprawdzie problemy z rozwiązaniem ścieżek dla specularów, więc jeśli scena ma dużo odbić i refrakcji, to wynikałoby z powyższego preferowane użycie RT, ale (!)
  2. Path tracing zapobiega wykładniczemu wzrostowi ilości promieni w trakcie wielokrotnej refrakcji i odbić, więc w przypadku szkła i ostrych odbić/refrakcji, z limitami odbić typu 10 może mieć kolosalną przewagę nad RT .
  3. Łatwo sprawdzić, że sceny typu kawałki szkła będę się szybciej liczyć w PBR - w każdym razie do czasu, kiedy nie włączymy motion bluru i dofa...
  4. ... w którym to przypadku można zawsze pomęczyć się trochę z ustawieniami renderu i włączyć MPPBR.

 

MPPBR jest w większości przypadków mało pomocne. Przydaje się natomiast, kiedy dużo rozmycia ruchu i dof podnoszą niebezpiecznie pixel sampling (który w MPPBR nic nie kosztuje).

 

Przełączenie się z PBR na MPPBR powoduje natychmiastowy wzrost szumu. To jest logiczne biorąc pod uwagę, że RT/PBR wykonują shader dla każdego pixel-sampla, a MP/MPPBR tylko dla wierzchołka mikropoligona. Czyli zakładając: 9x9 * 1-9 ray samples masz maksimum ponad 700 wykonań shadera per pixel, a w trybie MP/MPPBR tylko ~4-16.

 

Aby to zrekompensować można zrobić kilka rzeczy: podbić Min Ray Samples lub/i zmniejszyć rozmiar mikropoligna (Ray Shading Quality). I tutaj trzeba się trochę pobawić. Na przykład dla sceny, który w PBR była ustawiona: 9x9, 1-9 ray samples, Shading Quality 1, w MPPBR możesz ustawić 6-16 ray samples, shading quality 2. Przy dużym motion blurze możesz podbić pixel sample jeszcze bardziej (16x16), bo one w tym trybie w ogóle nie bolą.

 

Cała sztuka z MBPBR to odpowiednio dobrać rozmiar mikropoligona i minimalną ilość promieni na pixel. W większości przypadków jesteś w stanie dostać jakość PBR w połowę krótszym czasie.

 

Czasami natomiast, szczególnie kiedy masz dużo miękkich odbić (a nie ostrych jak szkło), PBR/MPPBR dostaje baty od zwykłego RT, z powodu punktu (1), czyli immanentnych kłopotów path tracingu z miękkimi odbiciami. W takim przypadku zwykły RT, który wywołuje w Mantrze funkcje reflectedlight(), która to filtruje sample zgodnie z jakąś metodą analizy drugiego rzędu (gradienty, główne składowe, cholera wie, ale z całą pewnością Mantra nie uśrednia promieni wewnątrz stożka dla miękkich odbić, robi coś znacznie sprytniejszego), okazuje się być skuteczniejszy.

Edited by SYmek
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We are using cookies. Read about our Privacy Policy