Mapowanie wypukłości — Bump mapping

Kula bez mapowania wypukłości (po lewej). Mapa wypukłości do zastosowania do kuli (w środku). Kula z nałożoną mapą wypukłości (po prawej) wydaje się mieć nakrapianą powierzchnię przypominającą kolor pomarańczowy . Mapy wypukłości osiągają ten efekt, zmieniając sposób, w jaki oświetlona powierzchnia reaguje na światło, bez zmiany rozmiaru lub kształtu powierzchni.

Bump mapping to technika mapowania tekstur w grafice komputerowej do symulacji wypukłości i zmarszczek na powierzchni obiektu. Osiąga się to poprzez zakłócenie normalnych powierzchni obiektu i użycie zaburzonej normalnej podczas obliczeń oświetlenia. Rezultatem jest pozornie nierówna powierzchnia, a nie gładka powierzchnia, chociaż powierzchnia obiektu pod spodem nie ulega zmianie. Mapowanie nierówności zostało wprowadzone przez Jamesa Blinna w 1978 roku.

Mapowanie normalne jest najczęściej używaną odmianą mapowania wypukłości.

Zasady

Mapowanie wypukłości jest ograniczone, ponieważ nie modyfikuje kształtu leżącego poniżej obiektu. Po lewej stronie funkcja matematyczna definiująca mapę wypukłości symuluje kruszącą się powierzchnię kuli, ale kontur i cień obiektu pozostają takie, jak idealna kula. Po prawej stronie ta sama funkcja służy do modyfikowania powierzchni kuli poprzez generowanie izopowierzchni . Modeluje sferę o nierównej powierzchni, w wyniku czego zarówno jej zarys, jak i cień są renderowane realistycznie.

Mapowanie wypukłości to technika stosowana w grafice komputerowej, która sprawia, że renderowana powierzchnia wygląda bardziej realistycznie poprzez symulowanie niewielkich przemieszczeń powierzchni. Jednak w przeciwieństwie do mapowania przemieszczeń geometria powierzchni nie jest modyfikowana. Zamiast tego modyfikowana jest tylko normalna powierzchni, tak jakby powierzchnia została przesunięta. Zmodyfikowana normalna powierzchni jest następnie używana do obliczeń oświetlenia (przy użyciu na przykład modelu odbicia Phonga ) dając wygląd szczegółu zamiast gładkiej powierzchni.

Mapowanie wypukłości jest znacznie szybsze i zużywa mniej zasobów przy tym samym poziomie szczegółowości w porównaniu z mapowaniem przemieszczeń, ponieważ geometria pozostaje niezmieniona.

Istnieją również rozszerzenia, które oprócz zwiększenia poczucia głębi modyfikują inne cechy powierzchni. Mapowanie paralaksy i mapowanie horyzontu to dwa takie rozszerzenia.

Podstawowym ograniczeniem mapowania wypukłości jest to, że zaburza ono tylko normalne powierzchni bez zmiany samej powierzchni. Sylwetki i cienie pozostają zatem nienaruszone, co jest szczególnie widoczne w przypadku większych symulowanych przemieszczeń. Ograniczenie to można przezwyciężyć za pomocą technik, w tym mapowania przemieszczeń, w którym nierówności są nakładane na powierzchnię lub przy użyciu izopowierzchni .

Metody

Istnieją dwie podstawowe metody wykonywania mapowania wypukłości. Pierwsza wykorzystuje mapę wysokości do symulacji przemieszczenia powierzchni, dając zmodyfikowaną normalną. Jest to metoda wymyślona przez Blinna i jest zwykle określana jako mapowanie wypukłości, chyba że określono inaczej. Etapy tej metody podsumowano w następujący sposób.

Przed wykonaniem obliczeń oświetlenia dla każdego widocznego punktu (lub piksela ) na powierzchni obiektu:

  1. Sprawdź wysokość na mapie wysokości, która odpowiada pozycji na powierzchni.
  2. Oblicz normalną powierzchni mapy wysokości, zwykle przy użyciu metody różnic skończonych .
  3. Połącz normalną do powierzchni z kroku drugiego z prawdziwą („geometryczną”) normalną do powierzchni, tak aby połączona normalna wskazywała w nowym kierunku.
  4. Oblicz interakcję nowej „wyboistej” powierzchni ze światłami w scenie, korzystając na przykład z modelu odbicia Phonga .

Rezultatem jest powierzchnia, która wydaje się mieć prawdziwą głębię. Algorytm zapewnia również, że wygląd powierzchni zmienia się w miarę przesuwania się świateł w scenie.

Inną metodą jest określenie mapy normalnych, która bezpośrednio zawiera zmodyfikowaną normalną dla każdego punktu na powierzchni. Ponieważ normalna jest określona bezpośrednio, a nie wyprowadzona z mapy wysokości, ta metoda zwykle prowadzi do bardziej przewidywalnych wyników. Ułatwia to artystom pracę, dzięki czemu jest to obecnie najpopularniejsza metoda mapowania wypukłości.

Techniki mapowania bump w czasie rzeczywistym

Przykład fałszywego mapowania wypukłości w czasie rzeczywistym.
Od lewej:
  1. bitmapa powierzchni, celowo rozmyta,
  2. źródło światła bitmapa,
  3. efekt mapowania wypukłości z trajektorią orbity źródła światła .

Programiści grafiki 3D w czasie rzeczywistym często używają odmian tej techniki w celu symulacji mapowania wypukłości przy niższych kosztach obliczeniowych.

Jednym z typowych sposobów było użycie stałej geometrii, która pozwala na prawie bezpośrednie wykorzystanie powierzchni mapy wysokości. W połączeniu z wstępnie obliczoną tabelą przeglądową do obliczeń oświetlenia, metoda może być zaimplementowana z bardzo prostą i szybką pętlą, pozwalającą na uzyskanie efektu pełnoekranowego. Ta metoda była powszechnym efektem wizualnym, gdy po raz pierwszy wprowadzono mapowanie wypukłości.

Zobacz też

Bibliografia

Linki zewnętrzne