Teksturowanie

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Model dzbanka teksturowany wzorem marmuru

Teksturowanie - technika stosowana w grafice trójwymiarowej, której celem jest przedstawienie szczegółów powierzchni obiektów przestrzennych za pomocą obrazów bitmapowych (tekstur) lub funkcji matematycznych (tekstur proceduralnych). Mapowanie tekstury określa w jaki sposób powiązać piksele (nazywane w tym kontekście tekselami) lub wartości funkcji z powierzchnią obiektu. Tekstury niosą informacje o barwie powierzchni, jak również innych parametrach generowanego obrazu, związanych np. z modelem oświetlenia: barwa światła odbitego, rozproszonego, stopień przezroczystości, współczynnik załamania światła itp.

Tekstury bitmapowe to na ogół zdjęcia powierzchni rzeczywistych przedmiotów (ścian, tkanin, kory drzew, desek, itp.); tekstury proceduralne to parametryzowane wzory generowane programowo, np. szachownica, marmur, drewno, granit, chmury. Tekstury mogą być jedno, dwu i trójwymiarowe.

Teksturowanie jest alternatywą dla modelowania geometrycznego, bowiem przedstawienie wszystkich detali za pomocą geometrii jest trudne, niepraktyczne i w większości przypadków niemożliwe. Specjalnym przypadkiem teksturowania są bumpmapping oraz normal mapping, gdzie tekstura wpływa na sposób obliczania natężenia światła odbitego, symulując niewielkie nierówności powierzchni.

Mapowanie[edytuj | edytuj kod]

Mapowanie płaskie (po lewej), mapowanie sferyczne (po prawej)

Odwzorowanie współrzędnych dwuwymiarowej tekstury na współrzędne obiektu trójwymiarowego nazywane jest mapowaniem (mapowaniem tekstury):

  1. Odwzorowanie może zostać utworzone automatycznie, w procesie generacji obiektu przez oprogramowanie.
  2. Jeśli obiekt jest reprezentowany przez siatkę wielokątów projektant może określić współrzędne tekstury dla każdego wierzchołka - jest to tzw. UV mapping.
  3. Tekstura mapowana jest najpierw na jakąś prostą figurę przestrzenną, a następnie konkretne punkty są rzutowane na teksturowaną figurę. Używane figury:

Odwzorowanie jest wykonywane w lokalnym układzie współrzędnych obiektu, co sprawia, że tekstura jest "przyklejona" na stałe do obiektu, nadając jego powierzchni pożądany charakter.

Rzadziej tekstura jest ruchoma względem obiektu; w grafice czasu rzeczywistego (np. grach komputerowych) w ten sposób symuluje się metaliczne obiekty, które odbijają otoczenie (jest to tzw. mapowanie środowiska, ang. environment mapping).