Obiekt node: Różnice pomiędzy wersjami

Z MaSzyna
Skocz do: nawigacja, szukaj
(model)
(lines)
Linia 53: Linia 53:
  
 
== lines ==
 
== lines ==
Definiuje linię.
+
Definiuje linie.
 
     <span style="color:green;font-weight:bold;">node</span> -1 0 none <span style="color:tomato;font-weight:bold">lines</span> ''kolor grubosc''
 
     <span style="color:green;font-weight:bold;">node</span> -1 0 none <span style="color:tomato;font-weight:bold">lines</span> ''kolor grubosc''
 
     ''px py pz kx ky kz''
 
     ''px py pz kx ky kz''

Wersja z 20:57, 30 sie 2017

Każdy wpis node zaczyna się od preambuły:

   node max_distance min_distance nazwa typ
  • max_distance - liczba określająca maksymalną odległość, z jakiej obiekt jest widoczny (-1 oznacza brak ograniczenia widoczności).
  • min_distance - liczba określająca minimalną odległość, z jakiej obiekt jest widoczny.
  • nazwa - nazwa obiektu, służy do identyfikacji konkretnego obiektu w scenerii, np. przy wstawianiu składu na tor.
  • typ - typ obiektu. Dostępne typy opisane są poniżej.

dynamic

Wstawia do scenerii pojazd.

    node -1 0 none dynamic folder tekstura fizyka tor odleglosc obsada predkosc sprzeg ilosc_ladunku ladunek destination miejsce_docelowe enddynamic
  • folder - ścieżka do katalogu zawierającego model pojazdu do wstawienia, relatywna względem folderu dynamic.
  • tekstura - plik tekstury z katalogu folder, którym ma być oteksturowany model (bez rozszerzenia).
  • fizyka - plik charakterystyki z katalogu folder (bez rozszerzenia). Określa jaki model pojazdu zostanie użyty (np. 303E).
  • tor - tylko jeśli wpis nie jest częścią trainset. Należy wpisać nazwę obiektu node::track, na którym ma stanąć pojazd.
  • odleglosc - tylko jeśli wpis nie jest częścią trainset. Należy podać odległość pojazdu od punktu 1 obiektu node::track [m].
  • obsada - stan obsadzenia pojazdu. Dostępne typy:
    • headdriver - obsada w kabinie nr 1.
    • reardriver - obsada w kabinie nr 2.
    • nobody - brak obsady.
    • passenger - jazda w wagonie jako pasażer. Uwaga! Nie każdy wagon posiada taką możliwość!
    • connected
  • predkosc - tylko jeśli wpis nie jest częścią trainset. Określa prędkość początkową pojazdu [km/h].
  • sprzęg - tylko jeśli wpis JEST częścią trainset. Określa flagę sprzęgu łączącego z następnikiem.
    • 1 - hak
    • 2 - przewód hamulcowy
    • 4 - przewód ukrotnienia
    • 8 - przewód wysokiego napięcia
    • 16 - mostek przejściowy
    • 32 - przewód powietrzny 8 atmosfer
    • 64 - przewód ogrzewania
    • 128 - blokada

Aby otrzymać liczbę reprezentującą określony sposób sprzęgnięcia, należy zsumować liczby symbolizujące podłączenie interesujących nas elementów. Dla przykładu, aby otrzymać liczbę oznaczającą podłączenie haka, przewodu hamulcowego i ogrzewania dodajemy do siebie liczby 1 (podpięty hak), 2 (podpięty przewód hamulcowy) i 64 (podpięty przewód ogrzewania). Daje to liczbę 67.

  • ilosc_ladunku - ilość ładunku w pojeździe. [jednostka zależna od wpisu w pliku charakterystyki]
  • ladunek - tylko jeśli ilosc_ladunku > 0. Określa nazwę ładunku.
  • miejsce_docelowe - dla wagonów jest to stacja docelowa. Informacja taka umożliwi wykonywanie automatycznych manewrów przez AI (łączenie i rozłączanie składów, obsługa górki rozrządowej). Jeśli nie zostanie to wyszczególnione we wpisie, miejsce docelowe zostanie określone po przypisaniu rozkładu jazdy.

eventlauncher

Definiuje wyzwalacz zdarzeń.

    node -1 0 none eventlauncher x y z odleglosc klawisz czas zdarzenie1 zdarzenie2 komorka_pamieci parametry_komorki end
  • x, y, z współrzędne wyzwalacza w przestrzeni 3D.
  • odleglosc - maksymalna odległość obserwatora od obiektu, -1 oznacza brak sprawdzania odległości. [m]
  • klawisz:
    • kod klawisza wyzwalającego zdarzenie (tylko litery),
    • brak reakcji na klawisze - słowo kluczowe none
  • czas:
    • czas wyzwolenia zdarzenia - godzina w formacie hh:mm.
    • okresowość wyzwalania - ilość czasu ze znakiem minus [s].
    • brak reakcji czasowej - liczba 0.
  • zdarzenie1 - zdarzenie wyzwalane przy naciśnięciu klawisza gdy SHIFT nie jest naciśnięty albo gdy upłynął określony czas
  • zdarzenie2 - Event2: zdarzenie wyzwalane przy naciśnięciu klawisza gdy SHIFT jest naciśnięty opcjonalnie, po słowie condition
  • komorka_pamieci - nazwa komórki pamięci
  • parametry_komorki - wartości którym się muszą równać wartości komórki pamięciowej żeby zdarzenia zostały wysłane do kolejkowania.

lines

Definiuje linie.

    node -1 0 none lines kolor grubosc
    px py pz kx ky kz
    ...
    endlines
  • kolor - 3 liczby z zakresu <0-255> (RGB) opisujące kolor linii.
  • grubosc - grubość linii [mm].
  • px py pz kx ky kz - współrzędne początku i końca linii w przestrzeni 3D. Może wystąpić ich dowolna parzysta ilość.

line_strip

Definiuje linię łamaną.

    node -1 0 none line_strip kolor grubosc
    x y z
    ...
    endlines
  • kolor - 3 liczby z zakresu <0-255> (RGB) opisujące kolor linii.
  • grubosc - grubość linii [mm].
  • x y z - współrzędne linii w przestrzeni 3D. Może wystąpić ich dowolna ilość.

line_loop

Definiuje linię łamaną zamkniętą.

    node -1 0 none line_loop kolor grubosc
    x y z
    ...
    endlines
  • kolor - 3 liczby z zakresu <0-255> (RGB) opisujące kolor linii.
  • grubosc - grubość linii [mm].
  • x y z - współrzędne linii w przestrzeni 3D. Może wystąpić ich dowolna ilość.

memcell

Definiuje komórkę pamięci.

model

Wstawia do scenerii model w formacie T3D lub E3D.

   node -1 0 none model x y z rz plik_modelu tekstura_wymienna lights stany_swiatel endmodel
  • x, y, z - współrzędne modelu w przestrzeni 3D.
  • rz - rotacja w osi Z.
  • plik_modelu - ścieżka do modelu w formacie T3D lub E3D, relatywna względem folderu models.
  • tekstura_wymienna - ścieżka do tekstury, którą ma być oteksturowany submodel ze zdefiniowaną teksturą wymienną. Ścieżka relatywna względem folderu textures.
  • stany_swiatel - w zależności od ilości zdefiniowanych świateł w modelu, znaleźć tu się muszą liczby opisujące ich stan:
    • 0 - zgaszone
    • 1 - zapalone
    • 2 - pulsujące
    • 3 - zapalone tylko w nocy

W przypadku braku zdefiniowanych świateł, należy pominąć słowo kluczowe lights.

track

Definiuje odcinek trajektorii ruchu: drogi, tory, rzeki...

traction

Definiuje odcinek drutu sieci trakcyjnej.

    node -1 0 none traction zrodlo_zasilania napiecie prąd_max opor material grubosc uszkodzenia
    p1x p1y p1z
    p2x p2y p2z
    p3x p3y p3z
    p4x p4y p4z
    wysokosc_min odstep_wieszakow ilosc_przewodow odstep_przewodow widocznosc
    zdarzenie
    endtraction
  • zrodlo_zasilania - nazwa obiektu node::tractionpowersource, który ma zasilać ten odcinek sieci.
  • napiecie - napięcie sieci trakcyjnej bez obciążenia [V].
  • prąd_max - prąd przy którym napięcie w sieci spadłoby o połowę [V].
  • opor - rezystancja styku ślizgacz-przewód [Ω].
  • material - materiał, z jakiego wykonany jest drut:
    • Cu - miedź
    • Al - aluminium
  • grubosc - grubość drutu [mm].
  • uszkodzenia - flaga bitowa uszkodzeń:
    • 1 - patyna
    • 128 - zerwanie
  • p1x, p1y, p1z - współrzędne punktu będącego początkiem przewodu jezdnego.
  • p2x, p2y, p2z - współrzędne punktu będącego końcem przewodu jezdnego.
  • p3x, p3y, p3z - współrzędne punktu będącego początkiem przewodu nośnego.
  • p4x, p4y, p4z - współrzędne punktu będącego końcem przewodu nośnego.
  • wysokosc_min - najniższa wysokość górnego przewodu nad dolnym [m].
  • odstep_wieszakow - odstęp pomiędzy kolejnymi wieszakami [m].
  • ilosc_przewodow - ilość przewodów (0-jezdny, 1-jezdny+nośny, 2-2 jezdne+nośny, 3-2 jezdne+2 nośne; może się błędnie wyświetlać).
  • odstep_przewodow - odstęp między przewodami jezdnymi gdy ilosc_przewodow = 3 [m].
  • widocznosc - widoczność trakcji:
    • unvis/novis - niewidoczna
    • vis - widoczna
  • zdarzenie - opcjonalne zdarzenie event, które zostanie uruchomione gdy node::dynamic pobiera prąd z sieci.

tractionpowersource

Definiuje źródło zasilania sieci trakcyjnej.

    node -1 0 none tractionpowersource x y z napiecie czestotliwosc opor napiecie_max czas_restartu1 ilosc_prob_restartu czas_restartu2 rekuperacja end
  • x, y, z – położenie źródła prądu w przestrzeni 3D.
  • napiecie – napięcie w sieci trakcyjnej bez obciążenia.
  • czestotliwosc – częstotliwość prądu.
  • opor – rezystancja wewnętrzna podstacji.
  • napiecie_max – prąd przy którym uruchamia się bezpiecznik nadmiarowy szybki.
  • czas_restartu1 – czas po którym obwód się uruchamia ponownie po przeciążeniu.
  • ilosc_prob_restaru – ilość prób wznowienia pracy obwodu.
  • czas_restartu2 – czas po jakim zostanie uruchomiony obwód jeśli zostanie przekroczona ilość wznowień (załączeń bezpiecznika szybkiego).
  • rekuperacja – czy jest odzysk prądu z sieci:
    • recuperation - tak
    • norecuperation - nie

triangles

Definiuje trójkąt terenu.

    node -1 0 none triangles material ambient: ambient diffuse: diffuse specular: specular endmaterial tekstura
    x y z nx ny nz u v end
    ...
    endtri
  • ambient - 3 wartości RGB z zakresu <0;255>, określające kolor materiału.
  • diffuse - 3 wartości RGB z zakresu <0;255>
  • specular - 3 wartości RGB z zakresu <0;255>, określające siłę odbłyskiwania światła na trójkącie.
  • tekstura - ścieżka do pliku tekstury (bez rozszerzenia) relatywna względem folderu textures.
  • x, y, z - współrzędnie wierzchołka w przestrzeni 3D.
  • nx, ny, nz - współrzędne wektora normalnego.
  • u, v - współrzędnie wierzchołka UV w przestrzeni 2D. Określają układ tekstury.

Ilość wierzchołków w tym obiekcie jest nieograniczona, ale musi być wielokrotnością liczby 3.

triangle_strip

Definiuje siatkę trójkątów. Rzadko spotykany, częściej w jego miejsce używany jest lepiej zoptymalizowany node::triangles

triangle_fan

Definiuje siatkę trójkątów. Rzadko spotykany, częściej w jego miejsce używany jest lepiej zoptymalizowany node::triangles