Format T3D: Różnice pomiędzy wersjami

Z MaSzyna
Skocz do: nawigacja, szukaj
(Właściwości specyficzne dla typu Mesh)
(Właściwości specyficzne dla typu Stars)
Linia 223: Linia 223:
 
|  
 
|  
 
|}
 
|}
 
+
Pod definicją właściwości NumVerts muszą znaleźć się definicje grup punktów świetlnych. W jednej grupie mogą znaleźć się maksymalnie 3 punkty świetlne.
 
     1
 
     1
 
     x y z kolor 0
 
     x y z kolor 0
 
     x y z kolor 0
 
     x y z kolor 0
 
     x y z kolor 0
 
     x y z kolor 0
* '''1, 0''' - tokeny ignorowane, nieistotne z punktu widzenia symulacji
+
 
* '''x, y, z''' - współrzędne punktu w przestrzeni 3D
+
{| class="wikitable"
* '''kolor''' - zapisana dziesiętnie liczba szesnastkowa opisująca kolor świecenia BGR.
+
! Nazwa właściwości
 +
! Znaczenie
 +
! Typ wartości
 +
! Uwagi
 +
|-
 +
| '''1, 0'''
 +
| Tokeny ignorowane.
 +
| Liczby
 +
| Zwyczajowo zawsze podaje się '''1''' i '''0'''.
 +
|-
 +
| '''x, y, z'''
 +
| Współrzędne punktu w przestrzeni
 +
| 3 liczby [m]
 +
|
 +
|-
 +
| '''kolor'''
 +
| Kolor świecenia punktu
 +
| Liczba
 +
| Zapisana dziesiętnie liczba szesnastkowa opisująca kolor świecenia BGR.
 +
|}
  
 
=== Point ===
 
=== Point ===
  
 
=== Text ===
 
=== Text ===

Wersja z 19:01, 6 gru 2017

Plik T3D jest formatem tekstowym, przechowującym informacje o modelach trójwymiarowych. Składa się z dowolnej ilości submodeli określonego typu. Można dołączyć do modelu inne modele za pomoca komendy include.

Typy submodeli

  • Mesh - submodel składający się z trójkątów, może być pokryty teksturą.
  • FreeSpotLight - Obiekt świecący kierunkowo.
  • 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

Wspólne właściwości dla wszystkich typów

Wspólne właściwości dla wszystkich typów submodeli
Nazwa właściwości Znaczenie Typ wartości Uwagi
Parent Przypisuje submodel nadrzędny (rodzica). Nazwa submodelu
Type Definiuje typ submodelu. Jedno ze słów kluczowych:
  • Mesh,
  • FreeSpotLight,
  • Stars
Name Unikalna nazwa submodelu Tekst Pewne nazwy są zarezerwowane i służą do definiowania dodatkowych funkcjonalności w submodelu. Zobacz listę nazw specjalnych.
Anim Typ animacji submodelu. Tekst Zobacz listę dostępnych typów animacji.
Selfillum Określa sposób emisji światła przez obiekt Jedno ze słów kluczowych:
  • true
  • false

lub liczba z zakresu <0;1.25>

false - brak emisji światła.

true - emisja światła zawsze, niezależnie od poziomu oświetlenia scenerii

liczba - określa poziom oświetlenia scenerii, poniżej którego submodel ma emitować światło

MaxDistance Określa największą odległość, z jakiej submodel jest widoczny. Liczba [m] Aby obiekt był widoczny zawsze, niezależnie od odległości, należy podać wartość -1
MinDistance Określa minimalną odległość, z jakiej submodel jest widoczny Liczba [m]
Transform Macierz transformacji submodelu Liczby TO-DO: Napisać coś o znaczeniu konkretnych liczb

Właściwości specyficzne dla typu Mesh

Nazwa właściwości Znaczenie Typ wartości Uwagi
Ambient Określa jasność submodelu. 3 liczby RGB z zakresu <0-255>
Diffuse Określa kolor świecenia submodelu. 3 liczby RGB z zakresu <0-255>
Specular Określa poziom błyszczenia submodelu. 3 liczby RGB z zakresu <0-255>
Wire Określa, czy zamiast bryły należy rysować siatkę krawędzi Jedno ze słów kluczowych:
  • true
  • false
Nie działa (?)
WireSize Określa grubość krawędzi Liczba [cm] Tylko jeśli Wire: true;
Opacity Określa sposób renderowania przezroczystości submodelu Liczba 0 - renderowanie w fazie przezroczystych

1 - renderowanie w fazie nieprzezroczystych

Map Tekstura submodelu. Ścieżka do tekstury (bez rozszerzenia) TO-DO: Coś o ścieżce i replacableskinach
NumVerts Suma wszystkich wierzchołków w definicjach trójkątów Liczba


Pod definicją właściwości NumVerts znajdują się definicje trójkątów (o ile obiekt nie jest tzw. bananem). Ich ilość musi być równa NumVerts / 3. Definicje trójkątów oddzielone są od siebie pustą linią.

Wzór definicji trójkąta:

    maska_wygładzania
    x y z u v             
    x y z u v
    x y z u v
Nazwa właściwości Znaczenie Typ wartości Uwagi
maska_wygładzania Zapisana dziesiętnie maska bitowa określająca wygładzenie trójkąta. Liczba Jeśli w jednym punkcie spotykają się wierzchołki wielu trójkątów, to jeśli mają ustawione wspólne bity w masce, to wektor normalny zostanie wyliczony jako średnia, co da efekt zaokrąglenia w tym wierzchołku.
x, y, z Współrzędne wierzchołka w przestrzeni 3 liczby [m]
u, v Współrzędnie wierzchołka w układzie UV 2 liczby

Między współrzędnymi XYZ i UV mogą znajdować się współrzędne wektora normalnego. W praktyce nie stosuje się jawnych wektorów normalnych.

Właściwości specyficzne dla typu FreeSpotLight

Nazwa właściwości Znaczenie Typ wartości Uwagi
Diffuse Definiuje kolor świecenia submodelu 3 liczby RGB z zakresu <0-255>
NearAttenStart Liczba
NearAttenEnd Liczba
UseNearAtten Jedno ze słów kluczowych:
  • false
  • true
FarAttenDecayType Liczba
FarDecayRadius Liczba
FalloffAngle Określa kąt wygaszenia światła. Liczba [deg]
HotspotAngle Określa kąt pełnej jasności światła. Liczba [deg]

Właściwości specyficzne dla typu Stars

Nazwa właściwości Znaczenie Typ wartości Uwagi
Diffuse  ? 3 liczby RGB z zakresu <0-255> Parametr nieznaczący w kontekście tego submodelu
NumVerts Określa ilość punktów świetlnych zawartych w tym submodelu Liczba

Pod definicją właściwości NumVerts muszą znaleźć się definicje grup punktów świetlnych. W jednej grupie mogą znaleźć się maksymalnie 3 punkty świetlne.

    1
    x y z kolor 0
    x y z kolor 0
    x y z kolor 0
Nazwa właściwości Znaczenie Typ wartości Uwagi
1, 0 Tokeny ignorowane. Liczby Zwyczajowo zawsze podaje się 1 i 0.
x, y, z Współrzędne punktu w przestrzeni 3 liczby [m]
kolor Kolor świecenia punktu Liczba Zapisana dziesiętnie liczba szesnastkowa opisująca kolor świecenia BGR.

Point

Text