Opis pliku trasy:
Plik trasy w symulatorze “Mechanik” zawiera zestaw wszystkich obiektów, które można napotkać na trasie podczas jazdy pociągiem. Obiekty te dzielimy na dwa rodzaje: obiekty graficzne (widoczne podczas jazdy), oraz na obiekty niewidoczne podczas jazdy, lecz mające wpływ na nią (np. obiekty ustalające prędkość, kierujące ruchem pociągu, itp.) zwane dalej znacznikami.
W obecnym formacie trasy wyszczególnia się dwa typy obiektów graficznych: obiekty teksturowane (podlegające “normalnym” zasadom przekształceń trójwymiarowych takich jak np. obrót), oraz obiektów płaskich, ustawionych stale frontem do płaszczyzny ekranu (zwane dalej obiektami skalowanymi).
Do obiektów które można pokrywać teksturą należą : trójkąty, czworokąty oraz pięciokąty. Wszystkie te wielokąty opisujemy w przestrzeni trójwymiarowej (dalej zwaną “przestrzenią 3D”) za pomocą punktów z trzema współrzędnymi (x,y,z). Dla trójkąta będą to trzy punkty, które wyznaczą pozycję wierzchołków tego trójkąta. W przypadku czworokątów i pięciokątów będzie to odpowiednio czwórka i piątka punktów. W ostatnim przypadku należy zwrócić uwagę, aby owe punkty zawarte były w jednej płaszczyźnie w przestrzeni 3D co zapewnia poprawne teksturowanie wielokąta.
Przy konstruowaniu trasy należy uwzględnić następującą skalę: dwieście jednostek (punktów) w budowanej trasie odpowiada jednemu metrowi w rzeczywistym świecie.
Wskazówki:
Wyróżniamy następujące typy obiektów widocznych:
Znaczniki:
Każdy ze znaczników aktywowany jest w momencie minięcia go przez pociąg.
Zarówno każdy z obiektów graficznych (widocznych) jak i znaczników posiada własny format danych, które poniżej podajemy:
#t - nagłówek obiektu,
km - przy którym kilometrze w punktach
trasy obiekt jest położony,
ile - ile wierzchołków ma obiekt (3,4 lub
5),
x1,y1,z1 - współrzędne pierwszego wierzchołka
(względem pola km,
podobnie jak wszystkie pozostałe wierzchołki),
x2,y2,z2 - współrzędne drugiego wierzchołka,
.... -
współrzędne kolejnych wierzchołków, przy czym brane jest pod
uwagę tyle, ile jest określone w polu ile,
x5,y5,z5 - współrzędne ostatniego wierzchołka,
x6,y6,z6 - dla przyszłych formatów pliku dat
(należy wpisać trzy zera, ewentualnie wykorzystać do
określenia punktu zaczepienia tekstury),
x7,y7,z7 - dla przyszłych formatów pliku dat
(należy wpisać trzy zera, ewentualnie wykorzystać do
określenia punktu zaczepienia tekstury),
nr_0 - numer wierzchołka, którego
współrzędne są wykorzystane do określenia punktu zaczepienia
tekstury (z przedziału 1 do 7). Można tu podać któryś z
wierzchołków, jak również zdefiniować inny punkt i wpisać
go na przykład w miejsce współrzędnej 7. Wskazane jest, aby
wierzchołkiem określającym punkt zaczepienia tekstury był
punktem najbliższym z punktu widzenia czoła pociągu;
m_v - skala i
zwrot wektora v,
m_u - skala i zwrot
wektora u,
dlugosc - skala tekstury (im większa wartość
tym większa pikseloza),
nr_t - numer
tekstury w pliku trasa.dat,
JAKOSC - im mniejsza tym mniejsze
zniekształcenia perspektywiczne, ale większy koszt obliczeń;
liczba ta musi być podzielna przez 4,
nr_konca - numer ostatniego wierzchołka w
obiekcie (ze względu na oś z) pomnożony przez 3.
#t_prz - nagłówek obiektu,
Pozostałe parametry identyczne, jak dla obiektu teksturowanego
dowolnego.
#t_p - nagłówek obiektu,
Pozostałe parametry identyczne, jak dla obiektu teksturowanego
dowolnego, z wyjątkiem parametru JAKOSC, który nie występuje.
‘s - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,y,z - współrzędne obiektu (względem pola km)
s - skala obiektu. Jeśli podamy 1, to obiekt
będzie miał swoją naturalną wielkość, jeśli 2, to będzie
dwa razy większy, itd.
nr_t - numer
tekstury w pliku tekstury.dat,
‘sem - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,y,z - współrzędne obiektu (względem pola km)
pr_z - liczba określająca prędkość
podawaną przez aktualny semafor (patrz niżej)
pr_na - liczba określająca prędkość
podaną przez następny semafor (patrz niżej)
typ_sem - liczba określająca typ semafora (patrz
niżej)
Liczby określające prędkości
(dla semaforów) mają następujące odpowiedniki (pola pr_z
i pr_na):
0 - prędkość
niewskazywana (nieokreślona)
1 - 0 km/h
2 - <= 40 km/h
3 - <= 60 km/h
4 - <= 100 km/h
5 - najwyższa dopuszczalna prędkość
Liczby określające
typ semafora mają następujące odpowiedniki (pole typ_sem):
1 - to niezależnie od ustawień pr_z i pr_na
wyświetlane jest światło czerwone do momentu zatrzymania się
pociągu na stacji, a po pewnym czasie światło wyznaczone przez
pr_z i pr_na.
3 - semafor wyświetla sygnał zgodnie z wartościami pr_z
i pr_na.
‘z_d - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika. Nie podaje
się współrzędnej y, gdyż jest ona nieistotna. Wszystkie
znaczniki są obiektami niewidocznymi. W zasadzie ważna jest
tylko współrzędna z;
nr_d - numer dźwięku z pliku dzwieki.dat.
Jeśli dany aktywny już dźwięk chcemy wyłączyć, to podajemy
-1;
k - tutaj powinno być zawsze 5;
petla - czy dźwięk ma być zapętlony: 1 -
tak, 0 - nie;
hz_v - czy częstotliwość dźwięku
zależy od prędkości pociągu: 1 - tak, 0 - nie;
glosnosc - głośność odgrywanego dźwięku z
przedziału 0 - 128.
‘z_p - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika;
pr - jaka ma być dozwolona prędkość
(w km/h).
‘z_s - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika;
status - początek odcinka, na którym
obowiązuje znacznik - wpisujemy 1, znacznik końcowy - wpisujemy
0. Inne wartości niepoprawne.
‘z_z - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika;
status - znacznik początkowy - 1, znacznik
końcowy - 0.
‘z_shp - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika;
status - powinno zawsze być 1.
‘z_jb - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika;
status
- znacznik początkowy -
1, znacznik końcowy - 0.
‘o - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x,z - położenie znacznika. Tutaj obydwie
współrzędne są ważne;
kąt - kąt, o jaki obrócić środowisko w
radianach pomnożony przez 1000000. Na przykład jeśli chcesz
wykonać obrót o 0.005 radiana, to wpisujesz 5000. Wartość
dodatnia oznacza obrót w prawo, ujemna w lewo.
‘k - nagłówek obiektu,
km - przy którym kilometrze (w punktach
trasy) obiekt jest położony,
x1,z1 - położenie znacznika;
x2,z2 - położenie punktu naprowadzającego,
który powinien znajdować się w linii prostej (równolegle do
torów, jeśli dalej biegną prosto). Całe środowisko po
napotkaniu znacznika korygującego przesunie się tak, aby punkt
(x1,z1) znalazł się w punkcie (0,0,0) oraz obróci o
taki kąt, aby punkt (x2,z2) współrzędną x miał
równą 0.
To chyba wszystko odnośnie tworzenia tras.
Jeśli uda Ci się stworzyć kawałek trasy, prześlij ją do nas, a my dołączymy ją do starej i być może powstanie kawał długiej trasy.
Jeśli użyłeś nowych
tekstur lub dźwięków nie zapomnij przysłać także plików z
odpowiednimi obrazkami bądź dźwiękami, a także tekstury.dat
i/lub dzwieki.dat.
Najlepiej jednak używać tekstur i dźwięków tych samych, co w
trasie oryginalnej, gdyż tylko wtedy będzie można połączyć
wszystkie trasy.
Miłego i owocnego tworzenia tras życzą autorzy.