Pl:OSM-4D/Generic textures
Strona zawiera opis tekstur niskiej rozdzielczości (low resolution) stosowanych do trójwymiarowych modeli opisywanych na stronie Pl:OSM-4D
Opis
Tekstury maja wielkosc 64x64 pikseli i składają się z tła o dowolnej wartości RGB oraz prostokątów (symbolizujących zazwyczaj otwory okienne) o innej wartości kolorystycznej R´G´B´. Obszarem zastosowania tego typu tekstur maja byc przede wszystkim budynki w niższym stopniu uszczegółowienia (Level of detail 1 do 3) w trójwymiarowych modelach miast. Mala rozdzielczość tekstur ma ułatwić rendering online trójwymiarowych modeli miast.
Korzyści płynące ze stosowania tej techniki:
- Szybki rendering dużej liczby trójwymiarowych budynków w czasie rzeczywistym (możliwość poruszania się po modelu 3D online)
- Ujednolicenie optycznego wyglądu tekstur dla modeli 3D
- Ujednolicenie nazw tekstur dla modeli 3D: Cala biblioteka będzie mniejsza, nie będzie duplikatów o identycznych nazwach
- Szybkie teksturowanie dużych obszarów na podstawie niskiej jakości zdjęć
Fototekstury a tekstury niskiej rozdzielczosci
Tekstury wysokiej rozdzielczości (fototekstury) wyglądają zdecydowanie lepiej i docelowo powinno się dążyć do pokrycia nimi wszystkich zmapowanych budynków. Należy sobie jednak zdawać sprawę, ze problematyczne w ich użyciu jest:
- Wysoki nakład pracy. Kazdy budynek trzeba obfotografowac, najlepiej frontalnie. Zdjecia trzeba poddać obróbce.
- Wiedza niezbędna do obróbki. Zdjecia musza byc dopasowane kolorystycznie. Auta, drzewa, ludzie, słupy ulicze, latarnie i inne elementy zaslaniajace fasade usuniete ze zdjec a nie zawsze jest to mozliwe. Tekstury powinny byc powtarzalne "seamless"
- Nazewnictwo. Szybko dojdzie do sytuacji, gdy prawie identyczne tekstury beda uzywane pod wieloma roznymi nazwami w roznych miejscach. Koordynacja rozwoju biblioteki tekstur bedzie trudna.
- Ryzyko popelnienia bledu w tekturowaniu jest wysokie. Nawet osoby doswiadczone w tworzeniu modeli 3D popelniaja bledy polegajace na zlym wyskalowaniu czy umieszczeniu tekstury w zlym miejscu.
- Wizualizacja w czasie rzeczywistym. Ilosc danych powstajacych przy uzyciu fototekstur jest duza. Jesli nie zostana rozwiniete mechanizmy optymalizacji tego typu modeli, rendering w czasie rzeczywistym wiekszych obszarów pokrytych tego typu teksturami bedzie trudny.
Mimo tych wad jest oczywiste, ze nalezy dazyc w kierunku pokrywania budynków fototeksturami. Sa one nieporównanie ladniejsze, pozwalaja na bardzo dobra orientacje przestrzenna oraz zawieraja szereg informacji których nie ma w modelach teksturowanych generycznie.
Tagging
Propozycja ponizej:
Syntaks tekstur
Nazwa tekstury zawiera jej opis składający się z cyfr.
W przypadku nazwy typu AABBCCDD :
AA to współrzędna x początku tekstury symbolizującej otwór. Najmniejsza możliwa wartość to 00, największa 63
BB to współrzędna y początku tekstury symbolizującej otwór. Najmniejsza możliwa wartość to 00, największa 63
CC to współrzędna x końca tekstury symbolizującej otwór. Najmniejsza możliwa wartość to 01, największa 64
DD to współrzędna y końca tekstury symbolizującej otwór. Najmniejsza możliwa wartość to 01, największa 64
AA = v1
BB = v2
CC = v3
DD = v4
Każdy następny element tekstury opisywany jest po podkreślniku jako: A´B´C´D´E´F´G´H´
Analogicznie: Tekstura składająca się z n prostokątów jest opisywana jako:
ABCDEFGH_A´B´C´D´E´F´G´H´_ ... AnBnCnDnEnFnGnHn
Przykłady
Key | Description | Example values | Notes |
---|---|---|---|
generic_texture | puts generic texture on plane | yes | |
texture_rotation | rotation of texture on plane in [°] | 45° | |
scale_x | Scaling factor along the x-axis in [%] | 50% | |
Scale_y | Scaling factor along the y-axis in [%] | 74% | |
texturestart_x | Beginning of texture along the x-axis in [%] | 0% | patrz fragment: texture moving |
texturestart_y | Beginning of texture along the y-axis in [%] | 20% | patrz fragment: texture moving |
RGB_background | Wartosc RGB tla | 250,240,230 | min:0, max:255 |
RGB_opening | Wartosc RGB "otworu" | 0,15,115 | min:0, max:255 |
texture moving
Jeśli nie zdefiniujemy tego inaczej, tekstura rozpoczyna się od lewego dolnego rogu teksturowanej powierzchni.
Czasami chcemy jednak, by tekstura rozpoczynała się z innego miejsca, ponieważ daje to pożądany optyczny wynik po teksturowaniu.
Na rysunku poniżej widzimy teksturę przesuniętą w stosunku do teksturowanej płaszczyzny w lewo i w dól:
Tekstura powtarza się na poniższym przykładzie sześciokrotnie wzdłuż osi x i trzykrotnie wzdłuż osi y :
Wynik daje symetryczne położenie tekstur na fasadzie: