Przetwarzanie obrazu i dźwięku

Wielkość: px
Rozpocząć pokaz od strony:

Download "Przetwarzanie obrazu i dźwięku"

Transkrypt

1 Przetwarzanie obrazu i dźwięku Opracowanie: J. Kęsik j.kesik@pollub.pl

2 Oświetlenie Fiat lux! Et facta est lux (Rdz 1, 3) Wtedy Bóg rzekł: Niechaj się stanie światłość! I stała się światłość. Powierzchnia obiektu 3D jest renderowana jako czarna jeżeli nie jest oświetlana żadnym światłem (wyjątkiem są obiekty samoświecące)

3 Oświetlenie Generowanie oświetlenia i cieni obiektów 3D na scenie jest zadaniem skomplikowanym i wiąże się wieloma zasadami i prawami nie koniecznie odpowiadającymi fizycznemu modelowi opisu zachowania fal świetlnych Generalną zasadą jest dążenie do uzyskania odpowiedniego wyglądu w sensownym* czasie renderowania * sensowny czas jest zależny od przeznaczenia renderingu

4 Oświetlenie Powszechnie stosowaną metodą jest rozwiązywanie zadania znajdowania oświetlenia na zasadzie: obiekt JEST OŚWIETLANY przez źródła światła Dla każdego obiektu (obszaru obiektu) obliczana jest suma oświetlenia pochodząca od różnych źródeł światła. W zależności od ilości i rodzaju źródeł światła oraz możliwości karty graficznej obliczenie to wykonywane jest w jednym lub kilku przebiegach

5 Model oświetlenia Stosowany powszechnie w grafice 3D model oświetlenia uwzględnia kilka możliwych sytuacji Obiekt nie jest oświetlany, świeci własnym światłem Obiekt jest oświetlony światłem jednakowo rozproszonym - bezkierunkowym (ambient light) Obiekt odbija kierunkowe światło W sposób idealnie rozproszony Uzyskując połysk

6 Model oświetlenia Równanie oświetlenia Opisuje wynikowe natężenie oświetlenia obiektu w danym punkcie I Natężenie to jest najczęściej mnożone przez wartość koloru w tym punkcie (kolor obiektu lub punktu tekstury) aby uzyskać wartość koloru piksela na ekranie Jeżeli światło padające nie jest białe, intensywność zapisywana jest za pomocą koloru RGB a równanie oświetlenia rozbijane na 3 składowe

7 Model oświetlenia Równanie oświetlenia W najprostszym przypadku samoświecenia, równanie to sprowadza się do I = k i Gdzie k i jest współczynnikiem intensywności świecenia obiektu

8 Model oświetlenia Równanie oświetlenia Tak prosta wersja nie daje możliwości pokazania głębi obiektu. Wszystkie piksele wewnętrzne świecą z jednakową intensywnością powodując jego optyczne spłaszczenie

9 Model oświetlenia Równanie oświetlenia Oświetlenie bezkierunkowe jest opisywane zbliżoną wersją równania I = I a k a Gdzie I a jest współczynnikiem natężenia światła bezkierunkowego a k a jest współczynnikiem odbicia światła otoczenia przez obiekt

10 Model oświetlenia Równanie oświetlenia Również w tym przypadku nie ma możliwości ukazania głębi obiektu Światło otoczenia symuluje sytuację jednolitego oświetlenia sceny światłem powstałym z dużej ilości wielokrotnych odbić. Umożliwia uwidocznienie wszystkich obiektów sceny, nawet tych nie oświetlanych bezpośrednio.

11 Model oświetlenia Równanie oświetlenia Odbicie rozproszone (dispersed) zakłada sytuację istnienia światła punktowego, wysyłającego jednakowe promienie we wszystkich kierunkach Oświetlany obiekt ma powierzchnię idealnie matową. Padające światło odbija się równomiernie we wszystkich kierunkach

12 Model oświetlenia Równanie oświetlenia Jasność powierzchni w odbiciu rozproszonym (Lambertowskim) zależy od kąta między dwoma wektorami: Wektorem jednostkowym L określającym kierunek od punktu na obiekcie do źródła światła Wektorem normalnym N (jednostkowym) powierzchni obiektu w tym punkcie

13 Model oświetlenia Równanie oświetlenia Odbicie rozproszone Zależy od kąta padania światła Nie zależy od kąta obserwacji powierzchni

14 Model oświetlenia Równanie oświetlenia Odbicie rozproszone Podlega Lambertowskiemu prawu kosinusowemu

15 Model oświetlenia Równanie oświetlenia Odbicie rozproszone jest więc opisywane równaniem I = I p k d N L = I p k d cos θ Gdzie I p jest intensywnością światła punktowego a k d jest współczynnikiem intensywności odbicia rozproszonego obiektu Kąt Θ musi zawierać się w zakresie <0,90) stopni, dla wszystkich innych kątów

16 Model oświetlenia Równanie oświetlenia Odbicie rozproszone

17 Model oświetlenia Równanie oświetlenia Wariantem światła punktowego jest światło kierunkowe, zakładające że źródło światła znajduje się w znacznej odległości od obiektów. Wtedy można założyć, że dla wszystkich obszarów o tej samej wartości (skierowaniu) N, wartość kąta N L jest jednakowa

18 Model oświetlenia Równanie oświetlenia Tłumienie światła zakłada że obiekty znajdujące się w różnej odległości od źródła światła są oświetlane z różną intensywnością Zgodnie z teorią rozchodzenia się fali kulistej, moc światła powinna maleć wraz z kwadratem odległości f damp = 1 d l

19 Model oświetlenia Równanie oświetlenia W grafice 3D wprowadzony został jednak bardziej odpowiedni współczynnik tłumienia f damp = 1 2 c 1 +c 2 d l +c 3 d l przy założeniu, że nie może on przekroczyć wartości 1. Stałe c1, c2, c3 są określane empirycznie przez projektanta

20 Model oświetlenia Równanie oświetlenia Równanie oświetlenia uwzględniające dotychczasowe rozważania, miałoby postać I = I a k a + f damp I p k d cos θ A w przypadku wielu źródeł światła I = I a k a + n i=1 f dampi I pi k di cos θ i

21 Model oświetlenia Równanie oświetlenia Jeszcze bardziej ogólny wzór uwzględnia możliwość padania światła kolorowego (RGB) na powierzchnię o różnych współczynnikach odbicia (ambient i dispersed) dla każdej składowej

22 Model oświetlenia Równanie oświetlenia Odbicie zwierciadlane (idealne) Przedstawia sytuację idealnie gładkiej powierzchni, od której odbija się padające na nią światło Kąt odbicia jest równy kątowi padania światła w stosunku do wektora normalnego Światło odbija się tylko pod kątem odbicia a jego kolor nie jest zależny od koloru powierzchni odbijającej

23 Model oświetlenia Równanie oświetlenia Prawo Snella

24 Model oświetlenia Równanie oświetlenia Odbicie zwierciadlane (idealne) Może zależeć od kąta padania światła Jest widoczne tylko przy obserwacji z kierunku R

25 Model oświetlenia Równanie oświetlenia Odbicie zwierciadlane (nieidealne) Przedstawia bardziej rzeczywistą sytuację gdzie odblask jest widoczny także z innego kierunku niż kierunek odbicia światła Odblask maleje wraz ze wzrostem kąta α między kierunkiem obserwacji a kierunkiem odbicia

26 Model oświetlenia Równanie oświetlenia Odbicie zwierciadlane (nieidealne) (specular) Może zależeć od kąta padania światła Jest zależne od kąta α między kierunkiem odbicia i kierunkiem obserwacji

27 Model oświetlenia Równanie oświetlenia Odbicie zwierciadlane jest więc opisywane równaniem I = f damp I p W θ cos n Gdzie W(Θ) jest współczynnikiem intensywności odbicia zwierciadlanego, często ustalanym jako wartość stała <0,1> A n jest wykładnikiem odbicia, określającym szerokość rozbłysku szybkość zanikania

28 Model oświetlenia Odbicie zwierciadlane Źródło: n = 1, 5, 10, 20, 50, 100

29 Model oświetlenia Równanie oświetlenia Przybliżoną wartość wektora odbicia R można obliczyć ze wzoru R = 2N N L L

30 Model oświetlenia Równanie oświetlenia Model uwzględniający wszystkie rodzaje oświetlenia został opracowany przez Phong Buoi-Tuonga w 1975r. można go zapisać wzorem n I = I a k a + f dampi I pi k di cos θ i + W θ i cos n i i=1

31 Model oświetlenia Równanie oświetlenia Phonga Źródło:

32 Cieniowanie Korzystając z modelu Phonga, można wyznaczyć kolor (intensywność oświetlenia) w dowolnym punkcie obiektu Obliczanie oświetlenia dla każdego punktu nie jest jednak możliwe ze względu na ograniczenia sprzętowe ograniczenia w dokładności modelu obiektu

33 Cieniowanie Najprostszą metodą wyznaczania oświetlenia obiektu (cieniowania) jest cieniowanie płaskie Każdy wielokąt siatki opisującej obiekt jest cieniowany stałą wartością intensywności oświetlenia. Intensywność ta jest wyznaczana dla wektora normalnego wielokąta

34 Cieniowanie Najprostszą metodą wyznaczania oświetlenia obiektu (cieniowania) jest cieniowanie płaskie

35 Cieniowanie Podstawową wadą tego cieniowania jest występowanie ostrych przejść koloru na krawędziach wielokątów opisujących obiekt. Cieniowanie to będzie poprawne tylko wtedy gdy krawędzie wielokątów siatki odpowiadają krawędziom rzeczywistym obiektu W innych przypadkach konieczna jest interpolacja wygładzenie przejść kolorów między wielokątami

36 Cieniowanie Cieniowanie Gouraud W tej metodzie brane są pod uwagę wektory normalne wierzchołków wielokąta (trójkąta) Dla każdego wierzchołka obliczany jest kolor oświetlenia. Kolory pikseli wypełnienia trójkąta obliczane są na podstawie interpolacji biliniowej kolorów wierzchołków

37 Cieniowanie Cieniowanie Gouraud

38 Cieniowanie Cieniowanie Gouraud W przypadku braku wektora normalnego wierzchołka, jest on wyznaczany z uśrednienia wektorów normalnych wszystkich ścian do których należy dany wierzchołek

39 Cieniowanie Cieniowanie Gouraud

40 Cieniowanie Cieniowanie Gouraud Zaletą tego cieniowania jest zniwelowanie efektu ostrego przejścia między krawędziami wielokątów Wadą jest zanik ostrych krawędzi na powierzchni obiektu

41 Cieniowanie Cieniowanie Gouraud Zaletą tego cieniowania jest zniwelowanie efektu ostrego przejścia między krawędziami wielokątów Wadą jest zła realizacja odbić zwierciadlanych Ignorowanie rozbłysku wewnątrz trójkąta trójkątny kształt rozbłysku Skokowa zmiana rozbłysku podczas animacji

42 Cieniowanie Cieniowanie Gouraud

43 Cieniowanie Cieniowanie Phong W tej metodzie brane są pod uwagę wektory normalne wierzchołków wielokąta (trójkąta) Wektory te służą jako wektory wyjściowe do określenia (interpolacji) wektorów normalnych dla każdego piksela w trójkącie W każdym z pikseli obliczana jest jasność według określonego modelu (np. Phong)

44 Cieniowanie Cieniowanie Phong

45 Cieniowanie Cieniowanie Phong

46 Cieniowanie Cieniowanie Phong Zaletą tego cieniowania jest uzyskiwanie gładkich przejść oraz możliwość generowania odbić mniejszych od wielkości wielokąta Wadą jest Znacznie większa złożoność obliczeniowa Wyznaczanie wektora normalnego 3x bardziej złożone Obliczanie jasności w każdym pikselu

47 Cieniowanie - porównanie

48 Śledzenie promieni Ray tracing jest techniką renderowania będącą obecnie podstawą wielu algorytmów fotorealistycznych Po raz pierwszy wykorzystana w 1980 przez Turnera Whitteda Dzięki ray tracingowi można uzyskać szereg efektów oświetlenia (dokładne cienie i odbicia, przenikania przez powierzchnie przezroczyste, również ugięte) Znaczący wzrost jakości wizualnej za cenę poważnego zwielokrotnienia obliczeń

49 Śledzenie promieni Podstawowy pomysł to symulacja przebiegu promienia światła od źródła światła do obserwatora

50 Śledzenie promieni Dwa możliwe podejścia: Wyznaczanie promieni wychodzących ze źródła światła Nieefektywne obliczeniowo

51 Śledzenie promieni Dwa możliwe podejścia: Wyznaczanie promieni docierających do obserwatora Właściwy Ray-tracing

52 Śledzenie promieni Wyznaczanie pojedynczego promienia wymaga określenia czy ten promień przecina się z którymkolwiek z prymitywów (miliony) Podstawowy problem to stworzenie algorytmu, nie tylko umożliwiającego takie obliczenia ale wykonującego je w sposób najbardziej efektywny Śledzenie pojedynczego promienia jest skomplikowanym zadaniem a wykonanie obrazu wymaga prześledzenia ogromnej ilości promieni

53 Śledzenie promieni Real time? Quake3 : Raytraced (2005) 20 klatek 512x512 na sek. 36 GHz klaster 20 AMD 1800XP W chwili obecnej pierwsze karty graficzne z potokami raytrace Gry z raytracingiem do końca roku

54 Śledzenie promieni Promień jest elementem geometrycznym, posiadającym punkt początkowy i kierunek Zapis promienia w 3D wymaga dwóch wektorów 3 wartościowych (3D) Wektor 3D źródła origin Wektor 3D kierunku direction (znormalizowany) class Ray { Vector3 Origin; Vector3 Direction; };

55 Śledzenie promieni Algorytm śledzenia rozpoczynamy wypuszczając promienie z kamery w kierunku sceny, każdy promień odpowiada jednemu pikselowi obrazu Kolejność generowania pikseli obrazu nie ma większego znaczenia. Dla każdego piksela obrazu wyznaczany jest promień podstawowy (primary ray)

56 Śledzenie promieni Źródłem promienia jest pozycja kamery Kierunek wyznaczany jest wg. zasady Wyznaczenie wektorów kierunków dla 4 rogów obrazu Aproksymacja kierunku promienia na podstawie położenia piksela

57 Śledzenie promieni Promień podstawowy jest następnie testowany na okoliczność przecięć z prymitywami sceny Jeżeli promień nie przecina się z niczym to piksel przyjmuje kolor tła W innym przypadku musimy wyznaczyć pierwszy z prymitywów, w który trafił promień (najbliższy kamerze) W miejscu przecięcia musimy wyznaczyć: pozycję, kolor, normalną, współrzędne tekstury i in. (interpolacja danych werteksów)

58 Śledzenie promieni Dane punktu przecięcia mogłyby być zapisane następująco: class Intersection { Vector3 Position; Vector3 Normal; Vector2 TexCoord; Material *Mat; float Distance; // odległość od źródła do przecięcia };

59 Śledzenie promieni Mając pozycję przecięcia możemy w tym miejscu obiektu wyznaczyć oświetlenie według dowolnego modelu (np. Phong) Efektem będzie uzyskanie koloru, jaki przyjmie piksel obrazu (w najprostszym przypadku kolor obiektu w punkcie przecięcia) Zakończenie algorytmu na tym etapie skutkowałoby obrazem nie lepszym (a czasem gorszym) niż uzyskanym tradycyjnymi metodami

60 Śledzenie promieni Śledzenie promieni zakończone na pierwszym etapie (model oświetlenia ambient)

61 Śledzenie promieni Wiele algorytmów śledzenia promieni przewiduje kontynuację poprzez wyznaczenie nowych promieni z punktu przecięcia promienia podstawowego Istnieje kilka typów promieni generowanych z miejsca przecięcia. Wszystkie te promienie określane są mianem promieni drugorzędnych (secondary rays)

62 Shadow rays Shadow rays odpowiadają za określenie, czy miejsce przecięcia jest oświetlone konkretnym światłem. Za ich pomocą można w stosunkowo łatwy sposób wyznaczyć cienie. Chcąc tego dokonać, wyznaczamy z punktu przecięcia promienie do każdego źródła światła znajdującego się po właściwej stronie prymitywu (kąt mniejszy niż 90 stopni do normalnej)

63 Shadow rays Światło z danego źródła będzie wzięte pod uwagę tylko wtedy, gdy promień do tego źródła nie przecina żadnego innego prymitywu. W takim przypadku w równaniu oświetlenia np. Phonga współczynniki intensywności diffuse i specular światła zacienionego przyjmą wartość = 0

64 Shadow rays W obliczeniu oświetlenia nie jest brane pod uwagę źródło 5 a źródła 1 i 4 mają wyzerowane współczynniki

65 Shadow rays Shadow rays nie potrzebują znać parametrów punktu przecięcia z prymitywem, wystarczy parametr binarny wystąpienia przecięcia Dzięki temu generowane są nieco szybciej niż standardowe promienie Dobrą praktyką przy generowaniu shadow rays jest przesunięcie źródła promienia o nieznaczną odległość w kierunku normalnej prymitywu. Unika się w ten sposób potencjalnego błędu zaokrągleń mogącego spowodować wykrycie przecięcia własnej powierzchni

66 Shadow rays Shadow rays

67 Reflection rays Kolejną możliwością raytracingu jest generowanie dokładnych odbić od skomplikowanych powierzchni. Gdy promień podstawowy trafia w powierzchnię lustrzaną, tworzony jest promień odbicia. Promień ten, podobnie jak promień główny testowany jest na okoliczność przecięcia z obiektami sceny.

68 Reflection rays Promień odbicia wyznaczany jest na podstawie promienia głównego i wektora normalnego n r d r d 2 d n n

69 Reflection rays Gdy promień odbicia natrafi na obiekt, możliwe są dwa przypadki: 1. Powierzchnia obiektu nie jest lustrzana. 2. Powierzchnia obiektu jest lustrzana W 1 przypadku obliczany jest kolor w punkcie przecięcia (z uwzględnieniem shadow rays) W przypadku 2 rekursywnie generowany jest następny promień odbicia W przypadku wielu luster istnieje możliwość wystąpienia pętli nieskończonej. Zapobiega się temu przez ograniczenie głębokości rekursji do np. 10 poziomów

70 Reflection rays Powierzchnia obiektu jest lustrzana

71 Reflection rays W rzeczywistości rzadko mamy do czynienia z idealnymi lustrami Prawdziwe lustro odbije maksymalnie 95-98% światła padającego. Niektóre powierzchnie mogą powodować odbarwienia odbitego światła Taką sytuację symuluje się przez przemnażanie koloru światła padającego przez kolor lustra przy odbiciu od niego.

72 Reflection rays Możemy również symulować odbicia rozproszone. W takim przypadku dla punktu przecięcia obliczane jest pełne równanie oświetlenia, zawierające składnik rozproszenia jak i odbicia (należy uwzględnić również shadow rays dla tego punktu) a następnie dodawana wartość pochodząca od promienia odbicia (z wagami odpowiadającymi zachowaniu energii)

73 Transmission rays Ray tracing pozwala również na dokładne renderowanie ugięcia światła przy przechodzeniu przez przezroczyste powierzchnie. Gdy promień pada na powierzchnię przezroczystą, generowany jest nowy promień przenikania i analizowany dalej podobnie jak promień odbicia

74 Transmission rays Zgodnie z prawem Snella promień przenikający z jednego środowiska do drugiego, będzie odchylony od normalnej pod kątem wynikającym ze wzoru (n 1 sinθ 1 =n 2 sinθ 2 ), gdzie n 1 i n 2 są współczynnikami przenikania dla obu środowisk r z t d n n z d d n 1 d n z n 2 n n d n 1 n 2 θ 1 n θ 2 z t r

75 Transmission rays Gdy światło przemieszczające się w środowisku o wysokim współczynniku przenikania trafia na materiał o niskim współczynniku przenikania pod ostrym kątem, następuje całkowite wewnętrzne odbicie. W takim przypadku nie jest generowany promień przenikania n d n 1 n 2 θ 1 z r

76 Transmission rays Odbicie całkowite można wykryć sprawdzając czy długość wektora z jest większa od 1. W tym przypadku wektora t nie można obliczyć (ujemna wartość pierwiastka) n z z t n n d d z n n

77 Transmission rays Gdy światło trafia na powierzchnię przezroczystą, często oprócz przenikania widzimy odbicie. Dlatego natrafienie na taką powierzchnię powoduje wygenerowanie dwóch promieni (odbicia i przenikania), przeanalizowanie ich i połączenie uzyskanych kolorów. Wynikiem każdego z promieni jest kolor jaki widzi dany promień. W przypadku promieni głównych jest to kolor ostateczny piksela. W przypadku promieni pośrednich ich kolor jest połączony w wynikowy kolor piksela

78 Transmission rays Promień odbicia N Promień główny Promień przenikania

79 Transmission rays Równania Fresnela określają proporcje między światłem przenikającym (f t ) a odbitym (f r ). Uwzględniają równania dla światła spolaryzowanego horyzontalnie i wertykalnie (najczęściej uśrednione do jednej wartości) r t wert hor r wert hor f f r r f n n n n r n n n n r 1.0 ) ( 2 1 ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( t n d n t n d n t n d n t n d n

80 Recursive Ray Tracing Klasyczny algorytm raytracingu uwzględnia cienie, odbicia, przenikania i nietypowe materiały Pojedynczy promień główny może wygenerować znaczną ilość promieni pośrednich w zależności od ilości źródeł światła i ułożenia obiektów Promienie te układają się w strukturę drzewiastą

81 Recursive Ray Tracing Przykład itd.

82 Recursive Ray Tracing Przykład

83 Ray Tracing Obrazy wyrenderowane klasyczną metodą raytracingu mogą zawierać cienie, dokładne odbicia pomiędzy obiektami i efekty przezroczystości Wadą jest wrażenie zbytniej ostrości uzyskanego obrazu (aliasing) z powodu ograniczenia do punktowych źródeł światła i idealnego odbicia od powierzchni. Dzieje się tak z powodu wykorzystywania pojedynczych promieni przy określaniu cieni, odbić i przenikań

84 Stohastic Ray Tracing Pewne wygładzenie krawędzi można uzyskać zaburzając kierunki promieni głównych tak aby kierowały się losowo w ramach obszaru zajmowanego przez piksel

85 Distribution Ray Tracing Rozproszone śledzenie promieni jest rozszerzeniem klasycznego podejścia zakłada wyprowadzenie w miejsce pojedynczego promienia wiązki kilku(nastu) promieni Jest to technika pozwalająca uzyskać bardzo naturalne efekty za cenę kolejnego, znacznego zwielokrotnienia obliczeń (setki a nawet tysiące promieni dla jednego piksela)

86 Distribution Ray Tracing Za pomocą takiego podejścia można uzyskać: Antyaliasing przy stosowaniu wiązki dla promieni głównych (dla pojedynczego piksela) Uwzględnienie powierzchni emitującej światło rozproszone cienie Rozmyte odbicia i przenikania Rozmycie zbliżeniowe (focus blur) Motion Blur

87 Distribution Ray Tracing Przykład itd. itd.

88 Distribution Ray Tracing

89 Distribution Ray Tracing

90 Distribution Ray Tracing

91 Przecięcia promieni Podstawowym elementem algorytmu raytracingu jest system określający w co trafił promień Typowa scena może zawierać miliony prymitywów Przymitywy te mogą być po prostu trójkątami albo być złożone w takim przypadku następuje teselacja (podzielenie siatki na trojkąty)

92 Przecięcia promieni Scena jest zbudowana z pewnej liczby obiektów składających się z prymitywów i/lub innych obiektów Aby obiekt był renderowalny, potrzebujemy procedury określającej przecięcie tego obiektu z promieniem. Dla różnych rodzajów obiektów można zdefiniowac inne procedury wyznaczania przecięcia.

93 Przecięcia promieni Promień - sfera Promień ma źródło w punkcie p i kierunek u a sfera ma środek w punkcie c i promień r p u c r

94 Przecięcia promieni Promień - sfera Promień jest zbiorem punktów p+αu, dla α 0 Znajdujemy punkt q, który jest punktem na linii promienia leżącym najbliżej środka sfery Linia qc musi być prostopadła do wektora u, czyli (q-c) u=0, lub (p+αu-c) u=0 Z tego możemy obliczyć: α=-(p-c) u, takie że q=p-((p-c) u)u p u q c

95 Przecięcia promieni Promień - sfera Następnie sprawdzamy czy q znajduje się wewnątrz sfery: q-c r Gdy q jest poza sferą promień jej nie przecina Gdy q jest w środku sfery poszukujemy punktu przecięcia z powierzchnią sfery Promien przebija powierzchnie w 2 punktach q1 i q2: p u q1 q c q 2

96 Przecięcia promieni Promień - sfera Pozycje przebić: q1=p+(α-a)u) gdzie a=sqrt(r2- q-c 2) q2=p+(α+a)u) Dla α-a 0, promień przebija sferę w punkcie q1, dla α-a<0 q1 znajduje się bliżej niż źródło promienia (jest ono wewnątrz sfery) q q1 2 Wtedy wybieramy q2 p u q c

97 Przecięcia promieni Promień powierzchnia płaska Powierzchnia taka jest zdefiniowana przez wektor normalny n i odległość d od środka układu wsp. Testując przecięcie obliczamy punkt q przecięcia promienia z płaszczyzną, by q leżało na płaszczyźnie: d=q n=p n+αu n więc α=(d-p n)/(u n) Jeżeli (u n)=0 to promień jest równoległy do płaszczyzny Dla α 0 promień przecina płaszczyznę

98 Przecięcia promieni Promień trójkąt Sprawdzenie przecięcia polega najpierw na sprawdzeniu przecięcia z płaszczyzną, na której leży trójkąt (można również sprawdzić kierunek trójkąta backface culling). Gdy punkt q przecięcia promienia z płaszczyzną, musimy sprawdzić czy leży on wewnątrz trójkąta

99 Przecięcia promieni Promień trójkąt p u v 2 v 0 q v 1

100 Przecięcia promieni Promień trójkąt Jedna z prostrzych obliczeniowo metod uwzględnia wsp. barycentryczne punktu q v 2 q' =q-v 0 e 1 =v 1 -v 0 e 2 =v 2 -v 0 α=(q' e 2) /(e 1 e 2 ) β=(q' e 1) /(e 1 e 2 ) β v 0 α v 1 q Gdy α<0, β<0 lub α+β >1 to punkt q znajduje się poza trójkątem

101 Przecięcia promieni Promień trójkąt Jedna z prostrzych obliczeniowo metod uwzględnia wsp. barycentryczne punktu q v 2 q' =q-v 0 e 1 =v 1 -v 0 e 2 =v 2 -v 0 α=(q' e 2) /(e 1 e 2 ) β=(q' e 1) /(e 1 e 2 ) β v 0 α v 1 q Gdy α<0, β<0 lub α+β >1 to punkt q znajduje się poza trójkątem

102 Metody akceleracji Przykład Obraz 1280x przeciętnie 10 promieni/piksel 1000 obiektów różnych typów 3 poziomy rekurencji ~ testów przecięć Dla prędkości testów/s rendering potrwa ponad 100 dni! Akceleracja jest konieczna

103 Metody akceleracji Struktury akceleracji Są to zestawy danych grupujące obiekty w taki sposób, że można wydzielić z nich podgrupę obiektów, dla której będziemy sprawdzać przecięcie z promieniem Większość tego typu struktur bazuje na hierarchicznym podziale przestrzeni otaczającej grupę obiektów

104 Metody akceleracji Hierarchie przestrzeni otaczającej (omawiane częściowo wcześniej) Generalnie tworzymy otoczenie sceny (sfera, sześcian itp) a następnie dzielimy go na obszary tego samego typu (mniejsze sfery ) Testując promień sprawdzamy jego zderzenie z poszczególnymi poziomami otoczeń dochodząc do obszarów zawierających rzeczywiste prymitywy Taka metoda redukuje ilość testów z O(n) do O(log n), gdzie n jest ilością prymitywów

105 Metody akceleracji Wykorzystywane hierarchie to: Drzewa ósemkowe Drzewa KD Drzewa BSP Siatki jednolite Hierarchie sferowe Drzewa hierarchiczne

106 Metody akceleracji Wykorzystywane hierarchie to: Drzewa ósemkowe Podział wg. Zasady: Jeżeli sześcian zawiera więcej niż graniczna liczbę prymitywów jest dzielony na 8 jednakowych sześcianów Jest to struktura regularna, łatwa do automatycznego wyznaczenia tworzy jednak dużo niepotrzebnie rozdrobnionych przedziałów

107 Metody akceleracji Wykorzystywane hierarchie to: Drzewa KD Podział wg. Zasady: Jeżeli równoległobok zawiera więcej niż graniczna liczbę prymitywów jest dzielony na 2 niejednakowe równoległoboki. Podział następuje w arbitralnie wybranym punkcie Nieco lepiej dopasowuje się do nieregularnych kształtów dobrze spisuje się w raytracingu

108 Metody akceleracji Wykorzystywane hierarchie to: Drzewa BSP (binary space partitioning) Podział wg. Zasady: Jeżeli obszar zawiera więcej niż graniczną liczbę prymitywów jest dzielony na 2 niejednakowe części za pomocą płaszczyzny nie koniecznie równoległej do osi wsp. Lepsze wyniki niż drzewa KD bardziej skomplikowany algorytm doboru miejsca cięcia

109 Metody akceleracji Wykorzystywane hierarchie to: Siatki Jednolite Podział na jednolite obszary (np. sześciany) Zysk na szybkości metody, strata na zajętości pamięci dla skomplikowanych scen. Niewygodne przy dużym zróżnicowaniu wielkości obiektów rzadko stosowane w raytracingu (tylko szczególne przypadki)

110 Metody akceleracji Wykorzystywane hierarchie to: Hierarchie sferowe Sfera jest dzielona na podsfery obejmujące jej obszar sfery się nakładają. Łatwość wyznaczenia przecięcia za cenę redundancji Nie są zbyt popularne ze względu na trudności z automatycznym określeniem podziału

111 Metody akceleracji Wykorzystywane hierarchie to: Drzewa hierarchiczne Działają na podobnej zasadzie jak drzewa ósemkowe ale dopuszczają podział poszczególnych bloków na dowolnie dobrana ilość części Bardzo dobrze sprawdzają się w raytracingu

112 Metody akceleracji Rozwinięciem tych struktur jest wprowadzenie możliwości zagnieżdżania struktur różnego typu Np. jeden z sześcianów drzewa ósemkowego może zawierać wewnątrz strukturę drzewa BSP

113 Teksturowanie Polega na mapowaniu płaskich (i nie tylko) obrazów na trójwymiarowe bryły Jest prostym sposobem na zwiększenie wizualnej złożoności sceny o stosunkowo niewielkiej liczbie trójkątów

114 Po co tekstura Uzyskanie wrażenia realizmu bez nadmiernego zagęszczania siatki

115 Współrzędne tekstury 2D W dwu wymiarze współrzędne tekstury są podawane w układzie U,V (s,t) Wartości U, V są znormalizowane do 1 V 1.0 Tekstura jest opisana jako tablica wartości RGB Każdy element tekstury jest nazwany tekselem (ang. texel) U Tekstury są najczęściej obrazkami kwadratowymi o rozdzielczości =^2 np. 256x256

116 Mapowanie tekstury 0.1 Polygon V Tekstura Wynik U

117 Mapowanie tekstury t 1 (1,1) v 1 v v 0 t 2 t0 (0,0) u v 2 Wsp. tekstury Trójkąt (w dowolnej przestrzeni 3D)

118 Mapowanie tekstury Kafelkowanie - tiling (1,1) (0,0) v u Wsp. tekstury

119 Kafelkowanie (0,3) Zachodzi gdy współrzędne wykraczają poza 1 Od budowy tekstury zależy widoczność połączeń (0,3) (1,1) (1,1) (0,0) (0,0) (0,0) (3,0) Łączenia widoczne (0,0) (3,0) Łączenia zamaskowane

120 Mapowanie tekstury Smużenie - clamping (1,1) 1.5,0 (0,0) v u 1.0,0 0, 0 Wsp. tekstury

121 Mapowanie tekstury Odbicie - mirroring (1,1) (0,0) v u

122 Mapowanie tekstury Dopasowanie wielkości tekstury Wielkość tekstury i wielkość obiektu, na który nakładana jest tekstura nie musi się zgadzać Prawie na pewno będziemy nakładali mniejszą teksturę na większy obszar albo odwrotnie Konieczne jest dopasowanie tekseli

123 Mapowanie tekstury Dopasowanie wielkości tekstury Zakres u, v tekstury jest równy [0.0,1.0] teksel

124 Mapowanie tekstury Dowolna wartość (u, v) jest dopasowywana do tekseli tekstury wg. Zasady: Wartość (u,v) jest mnożona przez rozdzielczość tekstury w poziomie i pionie. Odpowiednia pozycja jest odnajdywana na teksturze (najczęściej nie trafia w teksel) Kolor jest dobierany w zależności od sąsiadujących tekseli

125 Mapowanie tekstury Najbliższy sąsiad Interpolacja biliniowa

126 Mapowanie tekstury Tekstura Obraz Tekstura > obraz Obraz > tekstura Inne algorytmy przy powiększaniu i pomniejszaniu Powiększenie: Interpolacja Zmniejszenie: Uśrednianie Dobrze by było mieć jednolity algorytm

127 Mip Mapping MIP = Multim In Parvo = wiele w małym d v u Dla danego obszaru dobierana jest wersja tekstury o najbliższej rozdzielczości

128 Mip Mapping Dla tekstury 2 n x 2 n pixeli, wyznacz n-1 tekstur pochodnych każda z rozdzielczością = ½ rozdzielczości poprzedniej Oryginał Niższe rozdzielczości

129 Mip Mapping - Przykłady John Hart

130 Mip Mapping Zapis MIP mapy w pojedynczym pliku RGB nieefektywny Obszar nie używany MIP mapę N bajtowej tekstury można zapisać na 4n/3 bajtach stosując trik rozkładu na kanały RGB

131 Mip Mapping R R G R G R G B B B G B Ułożone w mozaikę kanały RGB kolejnych MIP map

132 Mip Mapping - przykład Cztery razy więcej pikseli, trzy razy mniej bitów na piksel

133 Mip Mapping filtrowanie triliniowe Trilinear filtering rozszerzenie filtrowania biliniowego zamiast wybierać najbliższą MIP mapę uśrednia liniowo dwie najbliższe

134 Dopasowanie liniowe: Uproszczone równanie dla mapowania liniowego: u α = (1 α)u 0 + αu 1, dla 0 α 1 Wyznacza wartości u α pomiędzy u 0 i u 1 Proste równanie Nie ma dzielenia Szybki algorytm

135 Mapowanie tekstury Dopasowywanie liniowe nie sprawdza się przy nakładaniu tekstury na powierzchnie będące pod kątem do kamery (0,1) (0,0) (1,0)

136 Liniowe mapowanie tekstury Wada: Zaburzenia w teksturze

137 Liniowe mapowanie tekstury Tekstura Efekt uzyskany Efekt oczekiwany

138 Liniowe mapowanie tekstury Problem Jednakowe kroki na płaszczyźnie obrazu nie odpowiadają jednakowym krokom na płaszczyźnie obiektu

139 Liniowe mapowanie tekstury Interpolacja w przestrzeni ekranu Interpolacja w 3D

140 Liniowe mapowanie tekstury Aby zmniejszyć widoczność zniekształcenia można podzielić obszar na mniejsze trójkąty Mimo to błędy mogą być widoczne w połączeniach typu T

141 Liniowe mapowanie tekstury

142 Liniowe mapowanie tekstury

143 Perspektywiczne mapowanie tekstury u α = (1 α)u 0 + αu 1, dla 0 α 1 (1 α)(u 0 /z 0 ) + α(u 1 /z 1 ) u α = (1 α)(1/ z0 ) + α(1/z 1 ) Mapowanie perspektywiczne uwzględnia informację o głębi położenia werteksów (za cenę bardziej skomplikowanych obliczeń)

144 MIP mapy - Prefiltrowanie Wystąpienie powierzchni znajdującej się pod ostrym katem do obserwatora powoduje dodatkowo kłopoty z MIP mapowaniem Na skutek złożenia mapowania na wielokąt z mapowaniem na ekran w obszarach dalszych może zostać wybrana zbyt mała MIP mapa Algorytm dopasowuje do kwadratu

145 MIP mapy - Prefiltrowanie Rozwiązaniem jest filtr anizotropowy (an-isotropic -> nie tak samo w każdą stronę). Do MIP map dokładane są także wersje (N)x(N/2) np. 128x64 i odwrotnie Odpowiednia wersja dopasowywana jest w przypadku wąskich pasków

146 MIP mapy - Prefiltrowanie Extremetech

147 MIP mapy - Prefiltrowanie 3D Mark 2006

148 Automatyczne mapowanie tekstury Teksturę 2D można zmapować na obiekt 3D w sposób automatyczny metoda planarna, rzutuje obraz na płaszczyznę XY Źródło: Rosalee Wolfe, Teaching Texture Mapping Visually

149 Automatyczne mapowanie tekstury Teksturę 2D można zmapować na obiekt 3D w sposób automatyczny metoda planarna, rzutuje obraz na płaszczyznę XY Źródło: Rosalee Wolfe, Teaching Texture Mapping Visually

150 Automatyczne mapowanie tekstury Teksturę 2D można zmapować na obiekt 3D w sposób automatyczny metoda cylindryczna, rzutuje obraz z powierzchni cylindra opisanego na obiekcie Źródło: Rosalee Wolfe, Teaching Texture Mapping Visually

151 Automatyczne mapowanie tekstury Teksturę 2D można zmapować na obiekt 3D w sposób automatyczny metoda sferyczna, rzutuje obraz z powierzchni sfery opisanej na obiekcie Źródło: Rosalee Wolfe, Teaching Texture Mapping Visually

152 Automatyczne mapowanie tekstury Teksturę 2D można zmapować na obiekt 3D w sposób automatyczny metoda sześcienna (box), rzutuje obraz z powierzchni sześcianu opisanego na obiekcie wielokrotna metoda planarna Źródło: Rosalee Wolfe, Teaching Texture Mapping Visually

153 Mapowanie tekstury Bardziej skomplikowane obiekty wymagają stworzenia mapy UV Źródło: Johan Steen Blog

154 Mapowanie tekstury

155 Mapowanie tekstury Tekstura może zawierać kanał alpha umożliwiający stworzenie wrażenia przezroczystości (przerwy, prześwitywania)

156 Mapowanie tekstury We wczesnych wersjach silników 3D stosowano przezroczyste bitmapy do (kiepskiego) symulowania bardziej skomplikowanych obiektów 3D Takie drzewko wyglądało znośnie z daleka i w przeciwieństwie do płaskiej bitmapy, zmieniało się nieznacznie w miarę jego okrążania (zmiana kątów patrzenia na tekstury)

157 Bump Mapping Wiele tekstur przedstawia obraz małych nierówności powierzchni Ich wymodelowanie w obiekcie wymagałoby zbyt skomplikowanej siatki trójkątów Symulacja tych nierówności za pomocą tekstury daje wrażenie płaskości przy oświetleniu pod kątem do powierzchni

158 Bump Mapping

159 Bump Mapping Nawet jeżeli obraz tekstury zawiera cienie to nie będą one z reguły pasowały do bieżącego ustawienia oteksturowanej powierzchni

160 Bump Mapping Zadaniem Bump mappingu mapowania wybojów, jest stworzenie wrażenia chropowatości powierzchni bez modelowania nierówności w siatce

161 Bump Mapping Wykorzystuje mapę wysokości (bitmapa jednokanałowa) do zmiany wartości wektorów normalnych powierzchni

162 Bump Mapping Bez BM BM

163 Bump Mapping Nowa normalna jest wyznaczana na podstawie: N (u,v) = O u O v - B u (N O v ) + B v (N O u ) + B u B v (N N) = N - B u (N O v ) + B v (N O u ) = N + D N D N

164 Normal Mapping Podobna zasada jak BM Wykorzystuje mapę normalnych zamiast mapy wysokości Nie zmienia geometrii obiektów

165 Normal Mapping Zamiast obliczania nowej normalnej na podstawie wysokości, wartość normalnej w danym punkcie powierzchni jest zakodowana jako wartość RGB Mapa wysokości Mapa normalnych

166 Normal Mapping Przykład

167 Normal Mapping Może być użyte do znacznego zredukowania stopnia skomplikowania siatki Siatka 4 mln trójkątów Uproszczona siatka 500 trójkątów 8000 razy mniej trójkątów! Uproszczona siatka i normalka Źródło:

168 Bump Mapping Co tu nie pasuje?

169 Normal/Bump Mapping Zalety: Nie zmienia się geometria obiektu Mały koszt obliczeniowy Wady: Nie zmienia się geometria obiektu Teoretycznie chropowata powierzchnia jest gładka przy brzegu Chropowatości nie rzucają cienia Poprawa tych błędów jest kosztowna obliczeniowo

170 Displacement Mapping Przykład Bump Mapping Displacement Mapping

171 Displacement Mapping Przykład Height (Displacement) Map Displacement Mapping

172 Displacement Mapping Przykład

173 Displacement Mapping Zalety: Zmienia geometrię obiektu Dodaje wysoki poziom detali obiektu Wady: Skomplikowany i kosztowny algorytm Bardzo łatwo doprowadzić do zbytniego skomplikowania obiektów 3D

174 Displacement Mapping Obrazek z: Geometry Caching for Ray-Tracing Displacement Maps Matt Pharr i Pat Hanrahan. Skomplikowane cienie rzucane przez kamienie

175 Environment Map Mapowanie środowiskowe umożliwia tworzenie symulacji efektów odbicia czy przenikania Powierzchnie odbijające są symulowane przez położenie na obiekcie tekstury zawierającej (statyczny) widok odbicia. Widok ten jest generowany na podstawie obliczonej wcześniej mapy odbicia środowiska Najczęściej wykorzystywane są mapy sferyczne i sześcienne

176 Environment Map Mapa sferyczna zawiera bitmapę wygenerowaną jako odbicie od kulistej powierzchni znajdującej się w koło obiektu Kolor piksela wyznaczany jest na podstawie promienia padania i odbicia dla każdego piksela obiektu, widocznego na ekranie Taka mapa daje dobry wynik tylko dla obiektów zbliżonych do kulistych

177 Environment Map

178 Environment Map Mapa sześcienna daje nieco lepszy efekt mniej zniekształceń Jako odniesienie wykorzystany jest lokalny skybox sześcian zawierający odbicia wygenerowane osobno dla każdej z płaskich ścian

179 Environment Map Źródło: Rosalee Wolfe, Teaching Texture Mapping Visually

180 Wady metody Mapa jest zapisywana dla widoku zogniskowanego na środku obiektu, w przypadku skierowania wzroku na element obiektu odległy od środka widok powinien być inny. Najczęściej różnica jest nieznaczna słabo zauważalna Obiekt nie odbija sam siebie (Można to poprawić stosując odpowiedni model oświetlenia) Brak odbicia dla ruchomych obiektów nie można się przejrzeć w lustrze

181 Jak zapisać teksturę?

182 Environment Mapping Example Terminator II

183 Environment Maps The environment map may take one of several forms: Cubic mapping Spherical mapping (two variants) Parabolic mapping Describes the shape of the surface on which the map resides Determines how the map is generated and how it is indexed What are some of the issues in choosing the map?

184 Refraction Maps Za pomocą podobnej techniki można zasymulować przenikanie światła

185 Opacity Maps Za pomocą tekstur można definiować widoczne obszary

186 Opacity Maps Za pomocą tekstur można definiować widoczne obszary Znaczne uproszczenie modelu dla płaskich elementów

187 Mapy oświetlenia Quake

188 Mapy oświetlenia Stosowane wtedy gdy chcemy zaoszczędzić na czasie renderowania Statyczne obiekty mogą mieć nałożone tekstury określające padające na nie światło Tekstura taka powstaje podczas wcześniejszego obliczenia oświetlenia dla danego obiektu światło nie może być zmienne

189 = Illumination Maps +

190 Mapy oświetlenia Lightmapy są skalowane w lumelach (lumination element), odpowiadających jednemu lub więcej texelowi Jakość Lightmapy jest kompromisem między szybkością renderowania a jakością oświetlenia Zastosowanie Lightmap pozwala na użycie bardziej zaawansowanych modeli oświetlenia brak konieczności renderowania w locie

191 Illumination Maps Quake light maps

192 Procedural Texture Nie są gotowymi obrazami tylko instrukcjami generującymi pewien obraz 2D użyty następnie jako tekstura Służą do tworzenia materiałów mających określony wygląd (np. przypominający marmur) Procedura może tworzyć niepowtarzalne wzory tekstury

193 Procedural Texture Scale: s= 10 Szachownica If (u * s) % 2=0 && (v * s)%2=0 texture(u,v) = 0; // czarny Else texture(u,v) = 1; // biały

194 Turbulence Wykorzystanie różnego rodzaju procedur pseudolosowych daje możliwości generowania tekstur o określonym ogólnym wyglądzie turbulence ( x) k 1 i i 0 2 noise(2 i x)

195 Turbulence turbulence(x) sin( x turbulence ( x))

Animowana grafika 3D. Opracowanie: J. Kęsik.

Animowana grafika 3D. Opracowanie: J. Kęsik. Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Powierzchnia obiektu 3D jest renderowana jako czarna jeżeli nie jest oświetlana żadnym światłem (wyjątkiem są obiekty samoświecące) Oświetlenie

Bardziej szczegółowo

Animowana grafika 3D. Opracowanie: J. Kęsik.

Animowana grafika 3D. Opracowanie: J. Kęsik. Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Śledzenie promieni Ray tracing jest techniką renderowania będącą obecnie podstawą wielu algorytmów fotorealistycznych Po raz pierwszy wykorzystana

Bardziej szczegółowo

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Chcąc osiągnąć realizm renderowanego obrazu, należy rozwiązać problem świetlenia. Barwy, faktury i inne właściwości przedmiotów postrzegamy

Bardziej szczegółowo

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38 Wykład 5 Potok Renderowania Oświetlenie mgr inż. 1/38 Podejście śledzenia promieni (ang. ray tracing) stosuje się w grafice realistycznej. Śledzone są promienie przechodzące przez piksele obrazu wynikowego

Bardziej szczegółowo

Oświetlenie obiektów 3D

Oświetlenie obiektów 3D Synteza i obróbka obrazu Oświetlenie obiektów 3D Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Rasteryzacja Spłaszczony po rzutowaniu obraz siatek wielokątowych

Bardziej szczegółowo

Synteza i obróbka obrazu. Tekstury. Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych

Synteza i obróbka obrazu. Tekstury. Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Synteza i obróbka obrazu Tekstury Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Tekstura Tekstura (texture) obraz rastrowy (mapa bitowa, bitmap) nakładany na

Bardziej szczegółowo

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23 Wykład 6 mgr inż. 1/23 jest to technika w grafice komputerowej, której celem jest zwiększenie szczegółowości renderowanych powierzchni za pomocą tekstur. jest to pewna funkcja (najczęściej w formie bitmapy)

Bardziej szczegółowo

Plan wykładu. Akcelerator 3D Potok graficzny

Plan wykładu. Akcelerator 3D Potok graficzny Plan wykładu Akcelerator 3D Potok graficzny Akcelerator 3D W 1996 r. opracowana została specjalna karta rozszerzeń o nazwie marketingowej Voodoo, którą z racji wspomagania procesu generowania grafiki 3D

Bardziej szczegółowo

Filtrowanie tekstur. Kinga Laurowska

Filtrowanie tekstur. Kinga Laurowska Filtrowanie tekstur Kinga Laurowska Wprowadzenie Filtrowanie tekstur (inaczej wygładzanie) technika polegająca na 'rozmywaniu' sąsiadujących ze sobą tekseli (pikseli tekstury). Istnieje wiele metod filtrowania,

Bardziej szczegółowo

Model oświetlenia. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Model oświetlenia. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Model oświetlenia Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Obliczenie koloru powierzchni (ang. Lighting) Światło biegnie od źródła światła, odbija

Bardziej szczegółowo

GRK 4. dr Wojciech Palubicki

GRK 4. dr Wojciech Palubicki GRK 4 dr Wojciech Palubicki Uproszczony Potok Graficzny (Rendering) Model Matrix View Matrix Projection Matrix Viewport Transform Object Space World Space View Space Clip Space Screen Space Projection

Bardziej szczegółowo

GRAKO: ŚWIATŁO I CIENIE. Modele barw. Trochę fizyki percepcji światła. OŚWIETLENIE: elementy istotne w projektowaniu

GRAKO: ŚWIATŁO I CIENIE. Modele barw. Trochę fizyki percepcji światła. OŚWIETLENIE: elementy istotne w projektowaniu GRAKO: ŚWIATŁO I CIENIE Metody oświetlania Metody cieniowania Przykłady OŚWIETLENIE: elementy istotne w projektowaniu Rozumienie fizyki światła w realnym świecie Rozumienie procesu percepcji światła Opracowanie

Bardziej szczegółowo

a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna?

a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna? 1. Oświetlenie lokalne a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna? b. Co reprezentują argumenty i wartość funkcji BRDF? Na czym

Bardziej szczegółowo

Gry komputerowe: efekty specjalne cz. 2

Gry komputerowe: efekty specjalne cz. 2 1/43 Gry komputerowe: efekty specjalne cz. 2 Przygotowała: Anna Tomaszewska 2/43 Mapowanie środowiska - definicja aproksymacje odbić na powierzchnie prosto- i krzywoliniowej," oświetlanie sceny." obserwator

Bardziej szczegółowo

Efekty dodatkowe w rasteryzacji

Efekty dodatkowe w rasteryzacji Synteza i obróbka obrazu Efekty dodatkowe w rasteryzacji Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Efekty dodatkowe Cieniowanie i teksturowanie pozwala

Bardziej szczegółowo

Grafika komputerowa. Model oświetlenia. emisja światła przez źródła światła. interakcja światła z powierzchnią. absorbcja światła przez sensor

Grafika komputerowa. Model oświetlenia. emisja światła przez źródła światła. interakcja światła z powierzchnią. absorbcja światła przez sensor Model oświetlenia emisja światła przez źródła światła interakcja światła z powierzchnią absorbcja światła przez sensor Radiancja radiancja miara światła wychodzącego z powierzchni w danym kącie bryłowym

Bardziej szczegółowo

Zaawansowana Grafika Komputerowa

Zaawansowana Grafika Komputerowa Zaawansowana Komputerowa Michał Chwesiuk Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Wydział Informatyki 28 Luty 2017 Michał Chwesiuk Zaawansowana Komputerowa 28 Luty 2017 1/11 O mnie inż.

Bardziej szczegółowo

4/4/2012. CATT-Acoustic v8.0

4/4/2012. CATT-Acoustic v8.0 CATT-Acoustic v8.0 CATT-Acoustic v8.0 Oprogramowanie CATT-Acoustic umożliwia: Zaprojektowanie geometryczne wnętrza Zadanie odpowiednich współczynników odbicia, rozproszenia dla wszystkich planów pomieszczenia

Bardziej szczegółowo

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych autor: Robert Drab opiekun naukowy: dr inż. Paweł Rotter 1. Wstęp Zagadnienie generowania trójwymiarowego

Bardziej szczegółowo

Architektura Komputerów

Architektura Komputerów Studia Podyplomowe INFORMATYKA Techniki Architektura Komputerów multimedialne Wykład nr. 9 dr Artur Bartoszewski Rendering a Ray Tracing Ray tracing (dosłownie śledzenie promieni) to technika renderowania

Bardziej szczegółowo

Ustawienia materiałów i tekstur w programie KD Max. MTPARTNER S.C.

Ustawienia materiałów i tekstur w programie KD Max. MTPARTNER S.C. Ustawienia materiałów i tekstur w programie KD Max. 1. Dwa tryby własności materiału Materiał możemy ustawić w dwóch trybach: czysty kolor tekstura 2 2. Podstawowe parametry materiału 2.1 Większość właściwości

Bardziej szczegółowo

1. Oświetlenie Materiały i powierzchnie

1. Oświetlenie Materiały i powierzchnie 1. Oświetlenie Rzeczywiste światło emitowane przez określone źródło, odbijane jest na milionach powierzchni obiektów, po czym dociera do naszych oczu powodując, że widzimy dane przedmioty. Światło padające

Bardziej szczegółowo

Grafika komputerowa Tekstury

Grafika komputerowa Tekstury . Tekstury Tekstury są dwuwymiarowymi obrazkami nakładanymi na obiekty lub ich części, w celu poprawienia realizmu rysowanych brył oraz dodatkowego określenia cech ich powierzchni np. przez nałożenie obrazka

Bardziej szczegółowo

WSTĘP DO GRAFIKI KOMPUTEROWEJ

WSTĘP DO GRAFIKI KOMPUTEROWEJ WSTĘP DO GRAFIKI KOMPUTEROWEJ Miłosz Michalski Institute of Physics Nicolaus Copernicus University Październik 2015 1 / 15 Plan wykładu Światło, kolor, zmysł wzroku. Obraz: fotgrafia, grafika cyfrowa,

Bardziej szczegółowo

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do

0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do 0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do obserwatora f) w kierunku od obserwatora 1. Obrót dookoła osi

Bardziej szczegółowo

Grafika komputerowa Wykład 10 Modelowanie oświetlenia

Grafika komputerowa Wykład 10 Modelowanie oświetlenia Grafika komputerowa Wykład 10 Instytut Informatyki i Automatyki Państwowa Wyższa Szkoła Informatyki i Przedsiębiorczości w Łomży 2 0 0 9 Spis treści Spis treści 1 2 3 Spis treści Spis treści 1 2 3 Spis

Bardziej szczegółowo

Zjawisko widzenia obrazów

Zjawisko widzenia obrazów Zjawisko widzenia obrazów emisja światła przez źródła światła interakcja światła z powierzchnią absorbcja światła przez sensor Źródła światła światło energia elektromagnetyczna podróżująca w przestrzeni

Bardziej szczegółowo

Synteza i obróbka obrazu. Algorytmy oświetlenia globalnego

Synteza i obróbka obrazu. Algorytmy oświetlenia globalnego Synteza i obróbka obrazu Algorytmy oświetlenia globalnego Algorytmy oświetlenia Algorytmy oświetlenia bezpośredniego (direct illumination) tylko światło poadające bezpośrednio na obiekty, mniejszy realizm,

Bardziej szczegółowo

Algorytm SAT. Marek Zając 2012. Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora.

Algorytm SAT. Marek Zając 2012. Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora. Marek Zając 2012 Zabrania się rozpowszechniania całości lub fragmentów niniejszego tekstu bez podania nazwiska jego autora. Spis treści 1. Wprowadzenie... 3 1.1 Czym jest SAT?... 3 1.2 Figury wypukłe...

Bardziej szczegółowo

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe Czym są tekstury? Tekstury są tablicowymi strukturami danych o wymiarze od 1 do 3, których elementami są tzw. teksele.

Bardziej szczegółowo

Grafika 3D program POV-Ray - 36 -

Grafika 3D program POV-Ray - 36 - Temat 7: Rodzaje oświetlenia. Rzucanie cieni przez obiekty. Sposób rozchodzenia się, odbijania i przyjmowania światła na obiekcie. Ważną umiejętnością przy ray-tracingu jest opanowanie oświetlenia. Tym

Bardziej szczegółowo

10.3. Typowe zadania NMT W niniejszym rozdziale przedstawimy podstawowe zadania do jakich może być wykorzystany numerycznego modelu terenu.

10.3. Typowe zadania NMT W niniejszym rozdziale przedstawimy podstawowe zadania do jakich może być wykorzystany numerycznego modelu terenu. Waldemar Izdebski - Wykłady z przedmiotu SIT 91 10.3. Typowe zadania NMT W niniejszym rozdziale przedstawimy podstawowe zadania do jakich może być wykorzystany numerycznego modelu terenu. 10.3.1. Wyznaczanie

Bardziej szczegółowo

Ćwiczenie 4 - Podstawy materiałów i tekstur. Renderowanie obrazu i animacji

Ćwiczenie 4 - Podstawy materiałów i tekstur. Renderowanie obrazu i animacji Ćwiczenie 4 - Podstawy materiałów i tekstur. Renderowanie obrazu i animacji Materiał jest zbiorem informacji o właściwościach powierzchni. Składa się na niego kolor, sposób odbijania światła i sposób nakładania

Bardziej szczegółowo

Grafika realistyczna. Oświetlenie globalne ang. global illumination. Radosław Mantiuk

Grafika realistyczna. Oświetlenie globalne ang. global illumination. Radosław Mantiuk Oświetlenie globalne ang. global illumination Radosław Mantiuk Generowanie obrazów z uwzględnieniem oświetlenia globalnego Cel oświetlenia globalnego obliczenie drogi promieni światła od źródeł światła

Bardziej szczegółowo

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30 Wykład 4 mgr inż. 1/30 Synteza grafiki polega na stworzeniu obrazu w oparciu o jego opis. Synteza obrazu w grafice komputerowej polega na wykorzystaniu algorytmów komputerowych do uzyskania obrazu cyfrowego

Bardziej szczegółowo

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki

Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Rendering Na przygotowane w fazie operacji geometrycznych złożone z trójkątów szkieletowe bryły akcelerator

Bardziej szczegółowo

Bartosz Bazyluk POTOK RENDEROWANIA Etapy renderowania w grafice czasu rzeczywistego. Grafika Komputerowa, Informatyka, I Rok

Bartosz Bazyluk POTOK RENDEROWANIA Etapy renderowania w grafice czasu rzeczywistego.   Grafika Komputerowa, Informatyka, I Rok POTOK RENDEROWANIA Etapy renderowania w grafice czasu rzeczywistego. http://bazyluk.net/zpsb Grafika Komputerowa, Informatyka, I Rok POTOK RENDEROWANIA W grafice realistycznej stosuje się zwykle podejścia

Bardziej szczegółowo

Gry komputerowe, Informatyka N1, III Rok

Gry komputerowe, Informatyka N1, III Rok Oświetlenie Potok renderowania. Techniki oświetlenia i cieniowania. http://bazyluk.net/dydaktyka Gry komputerowe, Informatyka N1, III Rok POTOK RENDEROWANIA W grafice realistycznej stosuje się zwykle podejścia

Bardziej szczegółowo

Grafika 2D. Animacja Zmiany Kształtu. opracowanie: Jacek Kęsik

Grafika 2D. Animacja Zmiany Kształtu. opracowanie: Jacek Kęsik Grafika 2D Animacja Zmiany Kształtu opracowanie: Jacek Kęsik Wykład przedstawia podstawy animacji zmiany kształtu - morfingu Animacja zmiany kształtu Podstawowe pojęcia Zlewanie (Dissolving / cross-dissolving)

Bardziej szczegółowo

Scena 3D. Cieniowanie (ang. Shading) Scena 3D - Materia" Obliczenie koloru powierzchni (ang. Lighting)

Scena 3D. Cieniowanie (ang. Shading) Scena 3D - Materia Obliczenie koloru powierzchni (ang. Lighting) Zbiór trójwymiarowych danych wej$ciowych wykorzystywanych do wygenerowania obrazu wyj$ciowego 2D. Cieniowanie (ang. Shading) Rados"aw Mantiuk Wydzia" Informatyki Zachodniopomorski Uniwersytet Technologiczny

Bardziej szczegółowo

Autodesk 3D Studio MAX Teksturowanie modeli 3D

Autodesk 3D Studio MAX Teksturowanie modeli 3D Autodesk 3D Studio MAX Teksturowanie modeli 3D dr inż. Andrzej Czajkowski Instyt Sterowania i Systemów Informatycznych Wydział Informatyki, Elektrotechniki i Automatyki 25 kwietnia 2017 1 / 20 Plan Wykładu

Bardziej szczegółowo

Algorytmy oświetlenia globalnego

Algorytmy oświetlenia globalnego Synteza i obróbka obrazu Algorytmy oświetlenia globalnego Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Algorytmy oświetlenia Algorytmy oświetlenia bezpośredniego

Bardziej szczegółowo

Techniki animacji komputerowej

Techniki animacji komputerowej Techniki animacji komputerowej 1 Animacja filmowa Pojęcie animacji pochodzi od ożywiania i ruchu. Animować oznacza dawać czemuś życie. Słowem animacja określa się czasami film animowany jako taki. Animacja

Bardziej szczegółowo

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok Synteza grafiki 3D Pod pojęciem syntezy grafiki rozumiemy stworzenie grafiki

Bardziej szczegółowo

GRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej

GRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej GRAFIKA RASTROWA WYKŁAD 1 Wprowadzenie do grafiki rastrowej Jacek Wiślicki Katedra Informatyki Stosowanej Grafika rastrowa i wektorowa W grafice dwuwymiarowej wyróżnia się dwa rodzaje obrazów: rastrowe,

Bardziej szczegółowo

Optyka stanowi dział fizyki, który zajmuje się światłem (także promieniowaniem niewidzialnym dla ludzkiego oka).

Optyka stanowi dział fizyki, który zajmuje się światłem (także promieniowaniem niewidzialnym dla ludzkiego oka). Optyka geometryczna Optyka stanowi dział fizyki, który zajmuje się światłem (także promieniowaniem niewidzialnym dla ludzkiego oka). Założeniem optyki geometrycznej jest, że światło rozchodzi się jako

Bardziej szczegółowo

6 Przygotował: mgr inż. Maciej Lasota

6 Przygotował: mgr inż. Maciej Lasota Laboratorium nr 6 1/7 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Materiały i oświetlenie 6 Przygotował: mgr inż. Maciej Lasota 1) Wprowadzenie Specyfikacja biblioteki OpenGL rozróżnia trzy

Bardziej szczegółowo

Animowana grafika 3D. Opracowanie: J. Kęsik.

Animowana grafika 3D. Opracowanie: J. Kęsik. Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Rzutowanie Równoległe Perspektywiczne Rzutowanie równoległe Rzutowanie równoległe jest powszechnie używane w rysunku technicznym - umożliwienie

Bardziej szczegółowo

Rendering obrazu 3D. Rendering. Synteza i obróbka obrazu

Rendering obrazu 3D. Rendering. Synteza i obróbka obrazu Synteza i obróbka obrazu Rendering obrazu 3D Rendering Proces tworzenia dwuwymiarowego obrazu (np. na ekranie) na podstawie trójwymiarowego opisu nazywa się renderingiem. Na podstawie informacji wejściowych:

Bardziej szczegółowo

Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych

Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych Ćwiczenie nr 8 - Modyfikacje części, tworzenie brył złożonych Wprowadzenie Utworzone elementy bryłowe należy traktować jako wstępnie wykonane elementy, które dopiero po dalszej obróbce będą gotowymi częściami

Bardziej szczegółowo

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak Modelowanie i wstęp do druku 3D Wykład 1 Robert Banasiak Od modelu 3D do wydruku 3D Typowa droga...czasem wyboista... Pomysł!! Modeler 3D Przygotowanie modelu do druku Konfiguracja Programu do drukowania

Bardziej szczegółowo

GRK 5. dr Wojciech Palubicki

GRK 5. dr Wojciech Palubicki GRK 5 dr Wojciech Palubicki Uproszczony Potok Graficzny (Rendering) Model Matrix View Matrix Projection Matrix Viewport Transform Object Space World Space View Space Clip Space Screen Space Projection

Bardziej szczegółowo

Grafika komputerowa. Dla DSI II

Grafika komputerowa. Dla DSI II Grafika komputerowa Dla DSI II Rodzaje grafiki Tradycyjny podział grafiki oznacza wyróżnienie jej dwóch rodzajów: grafiki rastrowej oraz wektorowej. Różnica pomiędzy nimi polega na innej interpretacji

Bardziej szczegółowo

Tektura obiektów. Ogólnie sekcja opisująca teksturę wygląda następująco:

Tektura obiektów. Ogólnie sekcja opisująca teksturę wygląda następująco: Tektura obiektów Tekstura opisuje wygląd powierzchni obiektów. W PovRay'u do opisu tekstury wykorzystuje się trzy parametry: barwnik - pigment (ang. pigment) określa kolor powierzchni obiektu; wektory

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Mapowanie nierówności wprowadzenie Poziomy szczegółowości Cieniowanie w układzie stycznym Generacja wektorów normalnych i stycznych Mapy

Bardziej szczegółowo

Grafika 3D program POV-Ray - 1 -

Grafika 3D program POV-Ray - 1 - Temat 1: Ogólne informacje o programie POV-Ray. Interfejs programu. Ustawienie kamery i świateł. Podstawowe obiekty 3D, ich położenie, kolory i tekstura oraz przezroczystość. Skrót POV-Ray to rozwinięcie

Bardziej szczegółowo

Julia 4D - raytracing

Julia 4D - raytracing i przykładowa implementacja w asemblerze Politechnika Śląska Instytut Informatyki 27 sierpnia 2009 A teraz... 1 Fraktale Julia Przykłady Wstęp teoretyczny Rendering za pomocą śledzenia promieni 2 Implementacja

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Opóźnione cieniowanie wprowadzenie Koszt obliczeniowy cieniowania Cieniowanie jedno- i wieloprzebiegowe Cieniowanie opóźnione Schemat opóźnionego

Bardziej szczegółowo

Aleksandra Zając. Raport. Blender. Pokemon: Eevee

Aleksandra Zając. Raport. Blender. Pokemon: Eevee Aleksandra Zając Raport Blender Pokemon: Eevee 1. Modelowanie Przed rozpoczęciem modelowania do Blendera załadowałam obraz przedstawiający wybranego pokemona, aby podczas modelowania jak najlepiej odwzorować

Bardziej szczegółowo

1. Prymitywy graficzne

1. Prymitywy graficzne 1. Prymitywy graficzne Prymitywy graficzne są elementarnymi obiektami jakie potrafi bezpośrednio rysować, określony system graficzny (DirectX, OpenGL itp.) są to: punkty, listy linii, serie linii, listy

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Oświetlenie w grafice czasu rzeczywistego Modele koloru Modele źródeł światła Światła punktowe, kierunkowe i powierzchniowe Model nieba,

Bardziej szczegółowo

Modelowanie pola akustycznego. Opracowała: prof. dr hab. inż. Bożena Kostek

Modelowanie pola akustycznego. Opracowała: prof. dr hab. inż. Bożena Kostek Modelowanie pola akustycznego Opracowała: prof. dr hab. inż. Bożena Kostek Klasyfikacje modeli do badania pola akustycznego Modele i metody wykorzystywane do badania pola akustycznego MODELE FIZYCZNE MODELE

Bardziej szczegółowo

Polecenie ŚWIATPUNKT - ŚWIATŁO PUNKTOWE

Polecenie ŚWIATPUNKT - ŚWIATŁO PUNKTOWE Polecenie ŚWIATPUNKT - ŚWIATŁO PUNKTOWE Tworzy światło punktowe emitujące światło we wszystkich kierunkach. Lista monitów Wyświetlane są następujące monity. Określ położenie źródłowe : Podaj wartości

Bardziej szczegółowo

MODELE OŚWIETLENIA. Mateusz Moczadło

MODELE OŚWIETLENIA. Mateusz Moczadło MODELE OŚWIETLENIA Mateusz Moczadło Wstęp Istotne znaczenie w modelu oświetlenia odgrywa dobór źródeł światła uwzględnianych przy wyznaczaniu obserwowanej barwy obiektu. Lokalne modele oświetlenia wykorzystują

Bardziej szczegółowo

Podstawy POV-Ray a. Diana Domańska. Uniwersytet Śląski

Podstawy POV-Ray a. Diana Domańska. Uniwersytet Śląski Podstawy POV-Ray a Diana Domańska Uniwersytet Śląski Kamera Definicja kamery opisuje pozycję, typ rzutowania oraz właściwości kamery. Kamera Definicja kamery opisuje pozycję, typ rzutowania oraz właściwości

Bardziej szczegółowo

Podstawy 3D Studio MAX

Podstawy 3D Studio MAX Podstawy 3D Studio MAX 7 grudnia 2001 roku 1 Charakterystyka programu 3D Studio MAX jest zintegrowanym środowiskiem modelowania i animacji obiektów trójwymiarowych. Doświadczonemu użytkownikowi pozwala

Bardziej szczegółowo

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Rendering cieni wprowadzenie Cienie w grafice komputerowej Rendering off-line i rendering w czasie rzeczywistym Cienie rozmyte i ostre Mapy

Bardziej szczegółowo

Jak tworzyć dobre wizualizacje? Porady do wykorzystania w programie KD Max. MTpartner s.c.

Jak tworzyć dobre wizualizacje? Porady do wykorzystania w programie KD Max. MTpartner s.c. Jak tworzyć dobre wizualizacje? Porady do wykorzystania w programie KD Max MTpartner s.c. 1. Ustawienie widoku 1.1 Zasada mocnych punktów. Jeśli poprowadzimy 2 linie dzielące obraz w pionie na 3 równe

Bardziej szczegółowo

Grafika Komputerowa. Wykład 8. Przygotowanie do egzaminu. mgr inż. Michał Chwesiuk 1/32

Grafika Komputerowa. Wykład 8. Przygotowanie do egzaminu. mgr inż. Michał Chwesiuk 1/32 Grafika Komputerowa Wykład 8 Przygotowanie do egzaminu mgr inż. 1/32 Obraz Grafika Rastrowa Grafika Wektorowa Obraz przechowywany w pamięci w postaci próbki opisane za pomocą macierzy pikseli Każdy piksel

Bardziej szczegółowo

OpenGL Światło (cieniowanie)

OpenGL Światło (cieniowanie) OpenGL Światło (cieniowanie) 1. Oświetlenie włączanie/wyłączanie glenable(gl_lighting); - włączenie mechanizmu oświetlenia gldisable(gl_lighting); - wyłączenie mechanizmu oświetlenia glenable(gl_light0);

Bardziej szczegółowo

Technologie Informacyjne

Technologie Informacyjne Grafika komputerowa Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności December 12, 2016 1 Wprowadzenie 2 Optyka 3 Geometria 4 Grafika rastrowa i wektorowa 5 Kompresja danych Wprowadzenie

Bardziej szczegółowo

Śledzenie promieni w grafice komputerowej

Śledzenie promieni w grafice komputerowej Dariusz Sawicki Śledzenie promieni w grafice komputerowej Warszawa 2011 Spis treści Rozdział 1. Wprowadzenie....... 6 1.1. Śledzenie promieni a grafika realistyczna... 6 1.2. Krótka historia śledzenia

Bardziej szczegółowo

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska OpenGL oświetlenie Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska Kurs: Copyright c 2017 Bogdan Kreczmer Niniejszy dokument zawiera

Bardziej szczegółowo

CIENIE I CIENIOWANIE W GRAFICE KOMPUTEROWEJ

CIENIE I CIENIOWANIE W GRAFICE KOMPUTEROWEJ Biuletyn Polskiego Towarzystwa Geometrii i Grafiki Inżynierskiej Zeszyt 13 (2003), str. 19 23 19 CIENIE I CIENIOWANIE W GRAFICE KOMPUTEROWEJ Maria HELENOWSKA-PESCHKE Politechnika Gdańska, Zakład Technik

Bardziej szczegółowo

Monitory Opracował: Andrzej Nowak

Monitory Opracował: Andrzej Nowak Monitory Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz PC Format, nr 3 2008r. Kineskop ogólna budowa Monitory CRT Zasada działania monitora Monitory służą do

Bardziej szczegółowo

Karty graficzne możemy podzielić na:

Karty graficzne możemy podzielić na: KARTY GRAFICZNE Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera

Bardziej szczegółowo

Analiza obrazów - sprawozdanie nr 2

Analiza obrazów - sprawozdanie nr 2 Analiza obrazów - sprawozdanie nr 2 Filtracja obrazów Filtracja obrazu polega na obliczeniu wartości każdego z punktów obrazu na podstawie punktów z jego otoczenia. Każdy sąsiedni piksel ma wagę, która

Bardziej szczegółowo

Prawo odbicia światła. dr inż. Romuald Kędzierski

Prawo odbicia światła. dr inż. Romuald Kędzierski Prawo odbicia światła dr inż. Romuald Kędzierski Odbicie fal - przypomnienie Kąt padania: Jest to kąt pomiędzy tzw. promieniem fali padającej (wskazującym kierunek i zwrot jej propagacji), a prostą prostopadłą

Bardziej szczegółowo

Grafika rastrowa (bitmapa)-

Grafika rastrowa (bitmapa)- Grafika komputerowa Grafika rastrowa Grafika rastrowa (bitmapa)- sposób zapisu obrazów w postaci prostokątnej tablicy wartości, opisujących kolory poszczególnych punktów obrazu (prostokątów składowych).

Bardziej szczegółowo

GRK 5. dr Wojciech Palubicki

GRK 5. dr Wojciech Palubicki GRK 5 dr Wojciech Palubicki Projekty (dwu-osobowe) Napisać symulacje lotu kosmicznego w OpenGLu: Korzystając tylko z bibliotek które na ćwiczeniach zostały omówione Interaktywna symulacja Wszystkie wielokąty

Bardziej szczegółowo

Analiza obrazów. Segmentacja i indeksacja obiektów

Analiza obrazów. Segmentacja i indeksacja obiektów Analiza obrazów. Segmentacja i indeksacja obiektów Wykorzystane materiały: R. Tadeusiewicz, P. Korohoda, Komputerowa analiza i przetwarzanie obrazów, Wyd. FPT, Kraków, 1997 Analiza obrazu Analiza obrazu

Bardziej szczegółowo

1. Czym jest rendering? a. Komputerowa analiza modelu danej sceny i utworzenie na jej podstawie obrazu 2D. b. Funkcja umożliwiająca kopiowanie obrazu

1. Czym jest rendering? a. Komputerowa analiza modelu danej sceny i utworzenie na jej podstawie obrazu 2D. b. Funkcja umożliwiająca kopiowanie obrazu 1. Czym jest rendering? a. Komputerowa analiza modelu danej sceny i utworzenie na jej podstawie obrazu 2D. b. Funkcja umożliwiająca kopiowanie obrazu pomiędzy warstwami. c. Sposób tworzenia modeli 2D d.

Bardziej szczegółowo

Architektura Procesorów Graficznych

Architektura Procesorów Graficznych Architektura Procesorów Graficznych Referat: Rendering 3D: potok 3D, możliwości wsparcia sprzętowego, możliwości przyspieszenia obliczeń. Grupa wyrównawcza Cezary Sosnowski 1. Renderowanie Renderowanie

Bardziej szczegółowo

OpenGL Światło (cieniowanie)

OpenGL Światło (cieniowanie) OpenGL Światło (cieniowanie) 1. Oświetlenie włączanie/wyłączanie glenable(gl_lighting); - włączenie mechanizmu oświetlenia gldisable(gl_lighting); - wyłączenie mechanizmu oświetlenia glenable(gl_light0);

Bardziej szczegółowo

Przykładowe pytania na teście teoretycznym

Przykładowe pytania na teście teoretycznym Przykładowe pytania na teście teoretycznym Przedmiot: Informatyka I Rok akademicki: 2014/2015 Semestr : zimowy Studia: I / Z W grafice wektorowej obraz reprezentowany jest: przez piksele przez obiekty

Bardziej szczegółowo

Transformacje. dr Radosław Matusik. radmat

Transformacje. dr Radosław Matusik.   radmat www.math.uni.lodz.pl/ radmat Cel wykładu Celem wykładu jest prezentacja m.in. przestrzeni modelu, świata, kamery oraz projekcji, a także omówienie sposobów oświetlania i cieniowania obiektów. Pierwsze

Bardziej szczegółowo

Antyaliasing w 1 milisekundę. Krzysztof Kluczek

Antyaliasing w 1 milisekundę. Krzysztof Kluczek Antyaliasing w 1 milisekundę Krzysztof Kluczek Zasada działania Założenia: Metoda bazująca na Morphological Antialiasing (MLAA) wejście: obraz wyrenderowanej sceny wyjście: zantyaliasowany obraz Krótki

Bardziej szczegółowo

1. Podstawowe algorytmy techniki rastrowe a) dwa przecinające się odcinki mogą nie mieć wspólnego piksela (T) b) odcinek o współrzędnych końcowych

1. Podstawowe algorytmy techniki rastrowe a) dwa przecinające się odcinki mogą nie mieć wspólnego piksela (T) b) odcinek o współrzędnych końcowych 1. Podstawowe algorytmy techniki rastrowe a) dwa przecinające się odcinki mogą nie mieć wspólnego piksela (T) b) odcinek o współrzędnych końcowych (2,0), (5,6) narysowany przy wykorzystaniu algorytmu Bresenhama

Bardziej szczegółowo

Prawa optyki geometrycznej

Prawa optyki geometrycznej Optyka Podstawowe pojęcia Światłem nazywamy fale elektromagnetyczne, o długościach, na które reaguje oko ludzkie, tzn. 380-780 nm. O falowych własnościach światła świadczą takie zjawiska, jak ugięcie (dyfrakcja)

Bardziej szczegółowo

Światła i rodzaje świateł. Dorota Smorawa

Światła i rodzaje świateł. Dorota Smorawa Światła i rodzaje świateł Dorota Smorawa Rodzaje świateł Biblioteka OpenGL posiada trzy podstawowe rodzaje świateł: światło otoczenia, światło rozproszone oraz światło odbite. Dodając oświetlenie na scenie

Bardziej szczegółowo

Animowana grafika 3D Laboratorium 3

Animowana grafika 3D Laboratorium 3 3DStudio MAX teksturowanie modelu budynku dla potrzeb gry 3D W ćwiczeniu tym zakładamy, że mamy już ukończony model naszego budynku. Składa się on z wielu elementów: ścian, okien, drzwi, dachu itp. W teorii

Bardziej szczegółowo

Przygotowanie grafiki 3D do gier komputerowych

Przygotowanie grafiki 3D do gier komputerowych Grafika Komputerowa i Wizualizacja Przygotowanie grafiki 3D do gier komputerowych Rafał Piórkowski Plan wykładu 1. Ogólne wiadomości 2. Modelowanie high poly 3. Rzeźbienie 4. Modelowanie low poly 5. Model

Bardziej szczegółowo

- pozorny, czyli został utworzony przez przedłużenia promieni świetlnych.

- pozorny, czyli został utworzony przez przedłużenia promieni świetlnych. Zjawisko odbicia Zgodnie z zasadą Fermata światło zawsze wybiera taką drogę między dwoma punktami, aby czas potrzebny na jej przebycie był najkrótszy (dla ścisłości: lub najdłuższy). Konsekwencją tego

Bardziej szczegółowo

Fala jest zaburzeniem, rozchodzącym się w ośrodku, przy czym żadna część ośrodka nie wykonuje zbyt dużego ruchu

Fala jest zaburzeniem, rozchodzącym się w ośrodku, przy czym żadna część ośrodka nie wykonuje zbyt dużego ruchu Ruch falowy Fala jest zaburzeniem, rozchodzącym się w ośrodku, przy czym żadna część ośrodka nie wykonuje zbyt dużego ruchu Fala rozchodzi się w przestrzeni niosąc ze sobą energię, ale niekoniecznie musi

Bardziej szczegółowo

Wyznaczanie stałej słonecznej i mocy promieniowania Słońca

Wyznaczanie stałej słonecznej i mocy promieniowania Słońca Wyznaczanie stałej słonecznej i mocy promieniowania Słońca Jak poznać Wszechświat, jeśli nie mamy bezpośredniego dostępu do każdej jego części? Ta trudność jest codziennością dla astronomii. Obiekty astronomiczne

Bardziej szczegółowo

LUBELSKA PRÓBA PRZED MATURĄ 09 MARCA Kartoteka testu. Maksymalna liczba punktów. Nr zad. Matematyka dla klasy 3 poziom podstawowy

LUBELSKA PRÓBA PRZED MATURĄ 09 MARCA Kartoteka testu. Maksymalna liczba punktów. Nr zad. Matematyka dla klasy 3 poziom podstawowy Matematyka dla klasy poziom podstawowy LUBELSKA PRÓBA PRZED MATURĄ 09 MARCA 06 Kartoteka testu Nr zad Wymaganie ogólne. II. Wykorzystanie i interpretowanie reprezentacji.. II. Wykorzystanie i interpretowanie

Bardziej szczegółowo

Architektura Komputerów

Architektura Komputerów Architektura systemów Architektura Komputerów komputerowych Wykład nr. 9 dr Artur Bartoszewski Grafika 3D Grafika 3D Obiekty 3D istnieją w matematycznie opisanej wirtualnej przestrzeni za ekranem. Ekran

Bardziej szczegółowo

Grafika komputerowa. Dr inż. Michał Kruk

Grafika komputerowa. Dr inż. Michał Kruk Grafika komputerowa Dr inż. Michał Kruk Teksturowanie Pokrywanie powierzchni brył wzorami. Dla realizacji takich zadań w grafice najczęściej korzysta się z koncepcji teksturowania powierzchni. Ogólnie

Bardziej szczegółowo

OpenGL przezroczystość

OpenGL przezroczystość OpenGL przezroczystość W standardzie OpenGL efekty przezroczystości uzyskuje się poprzez zezwolenie na łączenie kolorów: Kolor piksela tworzy się na podstawie kolorów obiektu przesłanianego i przesłaniającego

Bardziej szczegółowo

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu

Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu Sphere tracing: integracja z klasycznymi metodami symulacji i renderingu IGK 2012 Michał Jarząbek W skrócie Funkcje niejawne opisują powierzchnie niejawne Powierzchnie niejawne metoda reprezentacji "obiektów"

Bardziej szczegółowo