Format T3D: Różnice pomiędzy wersjami
Z MaSzyna
(→Mesh) |
(→Typy submodeli) |
||
Linia 3: | Linia 3: | ||
* '''Mesh''' - submodel składający się z trójkątów, posiadający teksturę. | * '''Mesh''' - submodel składający się z trójkątów, posiadający teksturę. | ||
* '''FreeSpotLight''' - źródło światła. | * '''FreeSpotLight''' - źródło światła. | ||
− | * '''Stars''' - zbiór punktów świecących, z czego | + | * '''Stars''' - zbiór punktów świecących, z czego każdy z nich może mieć inną barwę. |
* '''Point''' | * '''Point''' | ||
* '''Text''' | * '''Text''' |
Wersja z 18:45, 28 sie 2017
Plik T3D jest formatem tekstowym, przechowującym informacje o modelach trójwymiarowych. Składa się z dowolnej ilości submodeli określonego typu.
Spis treści
Typy submodeli
- Mesh - submodel składający się z trójkątów, posiadający teksturę.
- FreeSpotLight - źródło światła.
- Stars - zbiór punktów świecących, z czego każdy z nich może mieć inną barwę.
- Point
- Text
Typy Point oraz Text występują w kodzie źródłowym, ale w praktyce nie są spotykane w modelach.
Składnia wpisu submodelu
Składnia różnych typów submodeli różni się, ale istnieje kilka wspólnych właściwości. Znacząca jest kolejność, w jakiej one występują.
Wspólne właściwości
Przed właściwościami specyficznymi dla określonego typu występuje 6 stałych własności:
- Parent - nazwa obiektu nadrzędnego w hierarchii rodzic-dziecko.
- Type - typ submodelu.
- Name - nazwa submodelu, potrzebna dla ustalenia hierarchii.
- Anim - wartość logiczna true/false. Jeśli ustawiona jest na true, submodel można animować za pomocą eventów.
A po nich kolejne 3:
- MaxDistance - maksymalna odległość z jakiej widoczny jest obiekt [m]
- MinDistance - minimalna odległość z jakiej widoczny jest obiekt [m]
- Transform - macierz transformacji. Każdy wiersz, zawierający po 4 liczby powinien znaleźć się w osobnej linii. Uwaga! Macierz przy eksporcie/imporcie modelu do programów do modelowania jest transponowana!
Właściwości specyficzne dla typów
Mesh
- Ambient
- Diffuse
- Specular
- SelfIllum - wartość logiczna true/false lub liczba. Określa, czy submodel ma emitować światło.
- Wire
- WireSize
- Opacity
- Map
Oprócz tego, na samym końcu definicji submodelu należy umieścić właściwość z wartością liczbową równą ilości wierzchołków w submodelu:
NumVerts: ilość_wierzchołków_we_wszystkich_trójkątach
A pod spodem definicje trójkątów. Ich ilość musi być równa NumVerts * 3. Wzór definicji trójkąta:
maska_wygładzania x y z u v x y z u v x y z u v
- maska_wygładzania - ?
- x, y, z - współrzędne wierzchołka w przestrzeni
- u, v - współrzędnie wierzchołka w układzie UV (odpowiadają za układ tekstury)