Jakie są fajne przykłady proceduralnych efektów cieniowania pikseli? [Zamknięte]

16

Jakie są dobre przykłady efektów cieniowania pikseli w procedurze lub przestrzeni ekranu? Kod nie jest konieczny; Po prostu szukam inspiracji.

W szczególności szukam efektów, które nie są zależne od geometrii lub reszty sceny (aby wyglądały dobrze renderowane samodzielnie na quadzie) i nie są oparte na przetwarzaniu obrazu (nie wymagają „obrazu podstawowego” , ”chociaż mogą zawierać tekstury). Multi-pass lub single-pass jest w porządku. Zrzuty ekranu lub filmy byłyby idealne, ale pomysły też działają.

Oto kilka przykładów tego, co szukam (wszystkie z próbek RenderMonkey): alt text http://public.blu.livefilestore.com/y1pXcNg_0EPZVzwu1T84a4Yek373x8062rhrNCA7UcftTjCkeiY-5uAuJiBYY29x2E53p5MO-uMA8FmEquvxsPCkA/effect1.jpg?psid=1 alt tekst http : //public.blu.livefilestore.com/y1p_5Lx7BdjFyFRBkbcc0WakAT7Q-99fVcFOxmTXBbG4VtoFzC0UfAj51eSnE7ZOD84EYL2Y51HhMS2nWsohhn1mQ/effect2.jpg PSID = 1 alt tekst http://public.blu.livefilestore.com/y1p_5Lx7BdjFyE3KhYtHe-Cdg7XuXcJ9Ou-GKzED-kZnzACyB5ypA6NSCfsYfuKa0h3ztoDRwwq9qBddX2OfG0fhg/effect3.jpg?psid= 1 alt text http://nv3wrg.blu.livefilestore.com/y1p1iHFwf-wytDo8HlTJca8RfckA-iTKgvLiJm0t9iz3S35YgeEnt99NMjKDgotxa3Bv90wAhOYLabzx2Sd3LoWF1H5.jpg

Mam świadomość tego pytania ; Nie pytam o źródło rzeczywistych implementacji shaderów, ale o kilka inspirujących pomysłów - a te w NVIDIA Shader Library najczęściej wymagają sceny lub efektów przetwarzania obrazu.

Robert Fraser
źródło
Czy potrafisz robić takie rzeczy proceduralnie, bez podstawy? Z pewnością jest to dla mnie nowe i interesujące.
Kaczka komunistyczna
@The Communist Duck - Wszystkie te przykłady pochodzą od RenderMonkey, dzięki czemu możesz zobaczyć, jak są zrobione. „Podstawa” jest zwykle obrazem szumu (pierwsze trzy wykorzystują szum objętościowy, podczas gdy czwarty to symulacja dynamiki płynów, która spawnuje płyn na teksturach prędkości i gęstości, w których użytkownik klika i symuluje (przez 23 przejścia ...) stamtąd Możliwe jest również przejście całkowicie proceduralne (tj. Wzorzec), ale procesor graficzny ma ograniczone generowanie liczb losowych, więc obrazy szumów generowane offline są zwykle lepsze.
Robert Fraser

Odpowiedzi:

28

Mapowanie wnętrza to niesamowity efekt. Wymaga nudnego płaskiego kwadratu i sprawia, że ​​wygląda jak budynek z wnętrzami, wszystko w całości w module cieniującym piksele. Jest półprocesowy, ponieważ niektóre zasoby są ręcznie wytwarzane, ale moduł cieniujący umieszcza je proceduralnie.

alt text

Martin
źródło
1
Słodki ... boczek ... Jezus, to niesamowite.
Robert Fraser,
Zdecydowanie muszę to uwzględnić w mojej następnej aplikacji;)
Rushyo
Wow, jeśli mogę to umieścić w silniku Cube 2, byłbym w stanie przerobić demo swojego portfolio, uczynić go szybszym I ładniejszym (EATS procesora z ręcznie modelowanymi budynkami wokół budynku, w którym faktycznie grasz)
speeder
Przyznanie nagrody za tę nagrodę, ale dziękuję wszystkim, którzy przedstawili sugestie!
Robert Fraser
Link pdf jest wyłączony. Czy możesz zapewnić jego istnienie?
Michael
7

Dla wielkiej inspiracji nie zapomnij sprawdzić efektów demonstracyjnych oldskool. Przychodzą na myśl rzeczy takie jak plazma, ogień, paski miedzi, osnowy, soczewki, rotozoomery.

Oczywiście wymagałoby to przeniesienia z twojej strony, ale myślę, że to wyzwanie.

Oto niezły zasób z niektórymi efektami i plikami źródłowymi: http://www.oldskool.org/demos/explained/demo_graphics.html

Ropucha
źródło
Całkowicie zapomniałem o demoscene. W szczególności 18-bitowy kolor może zapewnić słodki efekt przetwarzania obrazu. Zapomniałem też całkowicie o fraktalach - widziałem mandlebrota HLSL; Zastanawiam się, co można zrobić z shaderów.
Robert Fraser,
2

Tutaj znajduje się świetny zestaw przykładów shaderów

Kilka świetnych rzeczy, na których możesz budować i czerpać inspirację.

Kimau
źródło
To całkiem słodka strona! Większość wygląda jak stare oświetlenie / załamanie itp., Ale niektóre z tych materiałów wyglądają fajnie
Robert Fraser
2

ShaderToy to renderer shaderów WebGL, który pokazuje różne shadery w twojej przeglądarce. Ma wiele przykładów, możesz je edytować i kompilować w locie! Spędziłem z nim godziny bawiąc się :)

W przeglądarce będzie jednak potrzebny WebGL. Chrome jest obecnie prawdopodobnie najlepszym wyborem.

gak
źródło
1

Zobacz także oprogramowanie takie jak Mental Mill. Umożliwia programowanie modułu cieniującego z wykorzystaniem operacji matematycznych. Dodaj kilka losowych fal i obrazów i zobacz, co wychodzi z drugiego końca. Często mogę dowiedzieć się więcej o tym procesie niż obrazy, które znajduję („hej, to wygląda jak rój błyskawic”).

odkrycie podkreślone
źródło
Tak! Właściwie pytam o to b / c Pracuję na podobnym (open source) narzędziu (choć nieco innej publiczności)
Robert Fraser
Fajnie, technika ta jest zwykle określana jako „łączenie” i technologia typu „abstrakcyjne drzewo cieniujące”. Są też rzeczy takie jak mapzoneeditor.com, które mają świetne referencje.
odkrycie podkreślone
1

Jeśli masz kopię oryginalnego Unreal, możesz przejrzeć paczki tekstur w edytorze i zobaczyć wszystkie fajne efekty. Są one podobne do przykładów opublikowanych w pierwotnym pytaniu.

Andrew Russell
źródło