Orangegraphics Napisano 11 Luty 2008 Napisano 11 Luty 2008 v-ray nie obsługuje rozszepiania światła więc chyba tylko fake'ując. rozszczepianie prawdziwe real to tylko chyba w mentalu i rendermanie
SYmek Napisano 11 Luty 2008 Napisano 11 Luty 2008 Renderman, podobnie jak inne REYESy, również fakują aberracje. Tylko fizyczne modele potrafią takie rzeczy. W Rendermanie, tak jak w Mantrze, kolor secondary rays przelicza się na model spektralny, w nim rozczepia, a potem scale z powrotem w rgb. Nie jest to poprawna aberracja, ale działa. Tu masz ciekawy wątek o pisaniu shadera dla Houdiniego, który bierze takie rzeczy pod uwage. Ten shader jest prawie identyczny z tym, ktory trzeba by napisac dla Rendermana. Wątpie, żeby w standardowej instalacji PRMana, był taki shader... ale musiałbym sprawdzić. http://forums.odforce.net/index.php?showtopic=4196 pozdr., skk.
kamil.ochel Napisano 11 Luty 2008 Napisano 11 Luty 2008 Master > http://www.vray-materials.de/all_materials.php?mat=331 ten? testowal to ktos? jakie to wyniki daje?
naeq Napisano 11 Luty 2008 Autor Napisano 11 Luty 2008 Z tego co widze to nie do końca to o co mi chodziło, ale materiał nie zły. Spójrz na RenderTime, 2h na 2rdzeniach, trochę nie wydajny ten materiał...
SYmek Napisano 12 Luty 2008 Napisano 12 Luty 2008 Zaprogramowana ręcznie aberracja chromatyczna (aka dyspersja światła) wygląda mniej więcej tak: Oczywiście bez caustyki, którą trzeba by za pomocą fotonów zrobić. Czasy wahają się od 5 minut dla standardowych ustawień Mantry, do 20 minut dla: Shading Quality 2, Ray Shading Quality 2, Pixel Samples 9x9. Jeszcze jeden test: Tu trochę mniej subtelny efekt: To oczywiście nie ma nic wspólnego z fizycznym modelem refrakcji. Poza tym, że bierze się na przykład pod uwagę w miarę dokładny model fresnela dla powierzchni dialektycznych. pozdr., skk.
G.P Napisano 16 Luty 2008 Napisano 16 Luty 2008 Mozesz tez zrobic taki trick, ze renderujesz 3x ten sam obrazek (w sumie wystarczy tylko obiekt, który ma miec dyspersje) zwiekszajac za kazdym razem odrobine IOR (np. o 0.01), a nastepnie komponujesz w jakims Photoshopie czy innym GIMPie, w ten sposob ze bierzesz kanal R z pierwszego, G z nastepnego i B z kolejnego i sklejasz w kupe, uzyskujac piekna dyspersje vel aberacje chromatyczna (jak na "rysunku" ;) p.s. SYmek, czy Pixel Samples 9x9 to przypadkiem nie za duzo, jak dla sceny bez motion blura czy dofa? ;)
naeq Napisano 16 Luty 2008 Autor Napisano 16 Luty 2008 SYmek - bardzo ładnie to wygląda, za samotne programowanie shaderów jeszcze sie nie zabierałem, da się tak w v-ray'u? G.P - Naprawdę miałeś dobry pomysł, świetne :)
G.P Napisano 16 Luty 2008 Napisano 16 Luty 2008 SYmek - bardzo ładnie to wygląda, za samotne programowanie shaderów jeszcze sie nie zabierałem, da się tak w v-ray'u? Z tego co wiem, VRAY nie posiada zadnego jezyka cieniowania jak VEX w Mantrze czy RSL w RenderManie, wiec chyba jedynie poprzez SDK, a to juz wyzsza szkola jazdy IMO. Swoja droga, da sie SYmek w H9 pisac szadery przy pomocy Pythona? (bo zdaje sie, ze taka mozliwosc posiada najnowszy PRMan) G.P - Naprawdę miałeś dobry pomysł, świetne :) Pomysl nie moj, zaslyszany ;) Ale dziala i wyglada calkiem ok, tylko trzeba 3x razy renderowac to samo, co troche wydluza czas i zniecheca ;)
naeq Napisano 16 Luty 2008 Autor Napisano 16 Luty 2008 Ale wtedy da się wykonać coś w V-Ray'u nie wykonalnego nie używając innego Renderera :)
GRiPi Napisano 16 Luty 2008 Napisano 16 Luty 2008 tak, tylko wyrenderuj tym kolorowe refrakcje, obiekty :/ btw: final render pod maxa moze wyrenderowac dyspersje.
naeq Napisano 16 Luty 2008 Autor Napisano 16 Luty 2008 Oh mój kochany Final, kiedyś tylko go używałem, i bawiłem się dyspersją, aberracją, extra materiałami, tam można było wiele zdziałać... może znowu powrócę, tylko gorzej z GI tam :)
SYmek Napisano 16 Luty 2008 Napisano 16 Luty 2008 ][/u] p.s. SYmek, czy Pixel Samples 9x9 to przypadkiem nie za duzo, jak dla sceny bez motion blura czy dofa? ;) Za dużo, ale walczyłem głównie o wywalenie ząbków z "secodary rayes". Potem okazało się, że to geometria, którą wziąłem z odforce jest zła. Jest za mało gęsta, żeby liczyć bez subdivision i jednocześnie za gęsta, bo po włączeniu "render polygon as subdivision" Mantra bardzo zwalniała. Wystarczyło na przykład zrobić subdivade w Sopach i liczyło się znacznie szybciej. Ostatni przykład liczył się około 2 minuty z niskimi ustawieniami. Doszło by do pięciu w wyższych ustawieniach. Zresztą to jest Nurbs, i mantra zapieprza po nim jak oszalała (znacznie szybciej niż w H8). Poza tym Pixel Samples 9x9 nie miał dużego wpływu na czas. Bardziej już Shading Quality = 2, które daje przepiękną ostrość tekstur i idealne krawędzie (bez szumu i ząbków jak ma to miejsce w przypadku raytracerów). Shading Quality uzależnia ;). pozdr., skk. PS Jeśli już mowa o trikach, to oprócz pomysłu podanego przez G.P. moża by z łatwością zrobić to w kompozycji i szczerze powiem, byłby to mój pierwszy test w takiej scenie. Wystarczy albo wypluć oddzielny pass tylko dla refrakcji, albo powalczyć z maskowaniem (via luma matte na przykład) w kompozycji i rozbić te kolory displacem 2d. Tak się kiedyś robiło. EDIT: To znaczy refrakcje użyć jako mapę dla displace 2d... o to mi chodziło. EDIT2: @G.P. Nie, nie da się pythonem pisać shaderów w H9 i nie bardzo wiem, czemu by to miało służyć. W Rendermanie chodzi, zdaje się, o coś innego, ale nie jestem pewien. Marko-język, w którym w RAT'cie był TCL zamieniono na Pythona. Czyli za pomocą makr możesz składać shader z kawałków i do tego służył RAT przecież. To jest dokładnie to samo, co robi VOP. Zobacz na voplib.h, tam są zdefiniowane wszystkie makra dla Vopsów. Robienie tego w Pythonie mija się z celem. Chyba, że chodzi o istnienie klas w najnowszym RSL... jeszcze tego nie widziałem. Mogę nawet zdradzić, że kiedyś w chwili rozpaczy nad Vexem, chciałem coś podobnego zrobić. Na szczęście mi się nie udało, bo parser dla C, napisany w Pythonie to nie jest łatwa sprawa, chyba że korzysta się z gotowego rozwiązanie, które istnieją. Jeśli jednym powodem dla pisania shaderów w pythonie ma być łatwiejsza składnia, to to zupełnie nie ma sensu, bo opanowanie składni Vexa, to kwestia kilku godzin. Swoją drogą zdaje się, że Gelato ma translator RSL -> Python.
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się