Kieurnkowe: ray tracing
This commit is contained in:
@@ -9,6 +9,32 @@ __W modelu TCP/IP wyróżnia się 4 warstwy:__
|
||||
|
||||
Każda z warstw jest niezależna od pozostałych. Przykładowo, na poziomie warstwy aplikacji po drugiej stronie łącza widoczna jest bezpośrednio aplikacja, z którą zostało nawiązane połączenie, niezależnie od trasy pokonywanej przez pakiety w warstwie internetowej. Z kolei z perspektywy warstwy internetowej po przeciwnej stronie łącza znajduje się następne urządzenie na trasie posiadające adres IP, niezależnie od fizycznej struktury sieci i przykładowo liczby przełączników, jakie musi pokonać ramka przenosząca pakiet IP. Dzięki temu można łatwo wykorzystać w sieci różne technologie i z punktu widzenia wyższych warstw nie ma na przykład znaczenia, czy fizycznie transmisja odbywa się kablem w standardzie Ethernet, czy bezprzewodowo w jednym ze standardów Wi-Fi – dowolny rodzaj danych da się przesłać dowolnym łączem.
|
||||
|
||||
# Generowanie realistycznych obrazów scen 3D za pomocą metody śledzenia promieni
|
||||
|
||||
Metoda śledzenia promieni (ang. _ray tracing_) służy do generowania fotorealistycznych scen 3D z odwzorowaniem efektów oświetlenia (cienie, odbicia światła od obiektów). W metodzie śledzenia promieni analizowane są tylko promienie docierające do obserwatora, w kierunku odwrotnym do padania światła – od pozycji obserwatora, przecinając rzutnię (ekran), wgłąb sceny. Dzięki temu metoda śledzenia promieni pozwala zaoszczędzić wiele obliczeń w porównaniu z metodą próbkowania przestrzeni, w której promienie analizowane są od źródeł światła w kierunku sceny i wiele z nich jest rozpraszana po odbiciu od obiektów na scenie, w ogóle nie trafiając w ekran.
|
||||
|
||||
Zasada działania algorytmu śledzenia promieni jest następująca:
|
||||
1. Dla każdego piksela na ekranie z punktu, w którym znajduje się obserwator, wyprowadzany jest promień pierwotny, który przecina ten piksel.
|
||||
2. Jeżeli:
|
||||
- promień nie trafi na żaden obiekt na scenie – piksel przyjmuje kolor tła,
|
||||
- promień trafi w źródło światła – piksel przyjmuje kolor źródła,
|
||||
- promień trafi w obiekt – wyznaczany jest najbliższy punkt przecięcia z obiektem i dla niego:
|
||||
- obliczany jest kolor za pomocą jednego z modeli oświetlenia lokalnego (np. modelu Phonga),
|
||||
- ewentualne zacienienie (poprzez poprowadzenie pomocniczych promieni do źródeł światła i przeanalizowanie, czy przecinają inne obiekty)
|
||||
- kierunek odbicia promienia wtórnego, który następnie jest śledzony rekruncyjnie w taki sam sposób (jeżeli trafi w kolejny obiekt – jego oświetlenie lokalne jest mnożone przez współczynnik odbicia i dodawane do lokalnego oświetlenia poprzedniego obiektu)
|
||||
3. Krok 2 jest powtarzany dopóki promień wtórny nie trafi w tło albo w źródło światła, lub dopóki nie zostanie osiągnięta określona głębokość rekurencji.
|
||||
|
||||
Podstawową wadą metody śledzenia promieni jest jej (wciąż) duża złożoność obliczeniowa, znacznie rosnąca wraz z liczbą obiektów na scenie lub źródeł światła – natomiast dzięki niezależnym obliczeniom dla każdego piksela, stosunkowo łatwo można ją zrównoleglić np. dzięki możliwościom współczesnych kart graficznych.
|
||||
|
||||
__Model Phonga__ pozwala wyliczyć oświetlenie lokalne jako sumę trzech rodzajów światła:
|
||||
- __światło otaczające (ang. _ambient_)__ – bezkierunkowe światło, równomiernie oświetlające obiekty ze wszystkich stron – w naturze ten rodzaj światła dominuje w środku dnia podczas pochmurnej pogody,
|
||||
- __światło rozproszone (ang. _diffuse_)__ – światło padające z określonego kierunku i rozpraszane przez obiekty, dając ich równomierne oświetlenie z jednej strony,
|
||||
- __światło odbite (ang. _specular_)__ – światło padające z określonego kierunku i silnie odbijane przez obiekty, dając efekt połysku ich powierzchni.
|
||||
|
||||
Dla każdego typu sceny (pochmurny środek dnia, bezchmurny wieczór, ksieżycowa noc, bezksiężycowa noc, itd.) określa się różne wartości współczynników dla tych rodzajów światła.
|
||||
|
||||
Przy okazji: model Phonga ładnie tłumaczy dlaczego pochmurna pogoda jest najlepsza do fotografowania na tekstury modeli 3D, prawie nie ma wtedy cieni i refleksów ;-)
|
||||
|
||||
# Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA
|
||||
|
||||
Układy PLD, CPLD oraz FPGA należą do specjalizowanych scalonych układów cyfrowych (ASIC) konfigurowanych przez użytkownika – w odróżnieniu od typowych układów ASIC konfigurowanych maską przez producenta na zamówienie użytkownika. Układy programowalne mogą być dzięki temu produkowane i sprzedawane masowo, co w porównaniu z układami konfigurowanymi maską pozwala znacząco ograniczyć koszty stałe projektu użytkownika (właściwie każdy może taki układ kupić). Wyższy jest natomiast ich jednostkowy koszt i przy seriach rzędu kilkudziesięciu tysięcy urządzeń stają się przez to mniej opłacalne od układów konfigurowanych maską.
|
||||
|
||||
Reference in New Issue
Block a user