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.