Jestem swiadom tego, ze od ostatniej odpowiedzi minelo >2 miesiace; chcialem jednak powiedziec, ze jesli chodzi o LokSim3D, a w szczegolnosci o edytor wlasnie, to moge sluzyc swoja osoba; jesli ktos zna nasze forum, to wie, ze ja (tzn. tam "Quork") naleze do aktywnych konstruktorow do LokSim3D, najwiekszym projektem jest oczywiscie trasa, mam jednak tez na koncie kilka objektow, tekstur do nieba, i jedna kabine, wykonana, nota bene, w nowej technice nie stosowaniej dotad w towarzystwie LokSim3D. Moge byc rowniez znany niektorym z postujacych filmy z MaSzyny na YT, tam jako "quorkqtar". Wybaczcie prosze ewentualne bledy ortograficzne lub nieznane skroty, urodzilem sie tu (tzn. w Niemczech) i tu cale zycie ("Cale", tzn. 17 lat) spedzilem dotad, pomijajac urlopy w Ojczyznie.
BTT: Nie przeczytalem jeszcze dokladnie tego, co tu pisaliscie, ale z tego co widze, to troche za skomplikowanie to widzicie; n.p. nasyp: Czym rozni sie, dla programu, nasyp od Giewonta? Sprobuje zwiezle opisac edytor LS3D. Przedtem jeszcze jedna rzecz chcialbym zaznaczyc; nie wypowiadam sie na tematy typu "czy trasy fikcyjne sa czyms gorszym?", gdyz nie bedac uzytkownikiem MaSzyny nie mam, tak uwazam, prawa sie wypowiadac. Rozne zdania wynikaja tez z roznych podejsc do sprawy, do problemow konstrukcyjnych, a rowniez z dostepnosci przepisow kolejowych, ktore, o ile wiem, w Polsce sa mniej jawne niz tutaj. Jestem jedynie tutaj, by sluzyc swoja wiedza na temat LokSim3D, i sie dowiedziec roznych metod pracy stosowanych w EU07, moze znajde tutaj inne ciekawe podejscia do jakichs problemow, ktore mi pomoga rozwiazac swoje problemy, i mam tez nadzieje, ze moze ktores z moich podejsc Wam pomoga.
1. Pliki
Sa trzy podstawowe typy plikow, ktore tu graja role (pomijam .l3dlok, .l3dfpl, .l3dfont itp.). Sa to:
- .l3drail
- .l3dobj & .l3dgrp
- .l3dstr & .l3dkbs
Pierwszy, to jest plik toru. W nim jest zdefiniowany przekroj toru, rozstaw, wysokosc & grubosc szyn oraz tekstura. To znaczy, taki prosty, choc specjalistyczny objekt. (Program generuje wzdluz zdefiniowanej w trasie linii odcinki o danym tu profilu i teksturze, i dlugosci zawsze 10m, ale to juz mniej wazne).
Drugie, to sa objekty i objekty zgrupowane. Proste rzeczy, jak lawke itp. sie robi z pojedynczego objektu. Pojedynczy objekt sklada sie z punktow i powierzchni, ma jedna teksture i ewentualnie jedna teksture przezroczystosci. Najpierw uklada sie punkty, potem "naciaga" powierzchnie miedzy nimi, a potem sie przypisuje odpowiednie czesci tekstury odpowiednim powierzchniom.
Specjalna odmiana objektu, o ile wiem nie znana w EU07, jest objekt "wspolkrecacy" sie. To znaczy, ze automatycznie sie odwraca tak, ze sie zawsze patrzy dokladnie wzdluz jego osi Z. W ten sposob n.p. sa robione bardzo realistyczne, a FPS-oszczedne drzewa: Cztery punkty, powierzchnia, tekstura, tekstura przezroczystosci (moga tez byc skombinowane; mozna zdefiniowac w .l3dobj, ze kazdy pixel tekstury o kolorze x jest przezroczysty). Zawsze sie widzi dokladnie prostopadle, wiec nie przeszkadza, ze jest to plaskie zdjecie, a jak sie to cwanie wykorzysta, to pociag podczas jazdy odtraca galezie.
W objekcie zgrupowanym laczy sie wiele objektow ze soba w jeden duzy objekt. Stosuje sie to zawsze, jak albo nie starczylaby jedna tekstura, jeden element sie powtarza wiele razy, lub jesli jest po prostu bardzo skomplikowany. W objekcie zgrupowanym tez mozna ustawic dodatkowe rzeczy: faktor powiekszenia, tzn. czy objekt sie na ekranie zmienia zaleznie od odleglosci wedlug praw perspektywy, bardziej, czy mniej. Mniej, to n.p. kolorowe swiatelka w semaforach. Jak jestes blisko semafora, to widzisz normalnie szybke, a jak jestes daleko, to widzisz wyraznie swiatla, choc szybka ma <1pix, bo jest tam kolko o kolorze swiatla, ktory z bliska ma rozmiar <1pix i go nie widac, a z daleka ma 3 pix, wiec widzisz. Nastepnie czestotliwosc migania, oraz warunki, kiedy widac. Warunki sa to przede wszystkim sygnaly na semaforze (czyli, jako ze to niem. symulator, Hp0 do Hp2, Vr0 do Vr2, Ks0 do Ks2 itp.), poza tym boolean podany jako argument w pliku trasy, stan zwrotnicy, stan przejazdu kolejowego lub tez generator booleana przypadkowego. Pozatym w objekcie zgrupowanym mozna tez dodac tekst.
Trzecie, najwazniejsze tutaj, to jest plik trasy.
Pojedynczy modul sie buduje w .l3dstr, a w .l3dkbs mozna polaczyc moduly ze soba. Tam tez sie ustawia zwrotnice (nie w trasie!).
W pliku trasy podstawowym elementem jest tor. Kazdy tor definiuje swoj wlasny uklad. Jak tor skreca, idzie w gore czy w dol, lub cokolwiek innego, to os tego ukladu tak samo sie zachowuje.
Tor ma po pierwsze wlasciwosci, takie jak "ktory .l3drail?", "predkosc maksymalna", "tunel", "most", "przejazd" (te trzy nie dla grafiki, tylko dla systemu dzwiekowego), tutaj sie ustawia semafory, jakosc torowiska, stacje, opisy waznych punktow na trasie do EBuLa (nie mam niestety pojecia, jak to sie nazywa w j. polskim). To wszystko jest podane w zaleznosci od kilometrazu, tzn. osi toru.
Po drugie, "topologia". Tutaj sie wpisuje zakrety, stoki, zwrotnice, tzn., to tu sie modyfikuje os toru i definiuje, jak sie osie poszczegolnych torow maja do siebie.
Po trzecie, "objekty trasy". Tutaj sie ustawia wlasnie .l3dobj i .l3dgrp wzdluz toru, pojedynczo, lub inna ilosc ze zdefiniowanym odstepem, przypadkowa odchylka pozycji od sredniej, obrocenie objektu, oswietlenie itp. Jak chce las swierkowy wzdluz toru od HM20/3 (km 20,3) przez trzy kilometry, to zakladam objekt trasy do toru, przy danej pozycji, i w nim laduje .l3dobj ze swierkiem, i definiuje, ze chce miec 3000 swierkow co 1m. Tylko ze stoja one jak zolnierzyki dokladnie po srodku toru. Wiec ustawiam "x=40m", i je mam 40m na prawo od toru. Potem ustawiam przypadkowa odchylke: x=30m (to znaczy, ze objekty beda przypadkowo rozmieszczone miedzy 30m na lewo a 30m na prawo od glownej osi objektu, czyli 10 do 70m na prawo od toru), y=2m (gora-dol), z=.5m (to znaczy, ze odstep miedzy dwoma objektami wzdluz osi toru jest, jak podalem wyzej, 1m, +- wlasnie te 50cm.). Juz mam po prawej stronie toru pas lasu o dlugosci 3km i szerokosci 60m.
I juz mam gotowy ten las, i on mnie w ogole nie interesuje. Moge robic dowolne zakrety w torze, las sie automatycnie wykrzywi. Zawsze sie bedzei zaczynal 10m a konczyl 70m na prawo od toru. Jak dodam stok 6 promili, to las tez bedzie na wysokosci toru zawsze. Moge ustawic wysokosc lasu albo jak y, czyli w zaleznosci od toru, wtedy bedzie zawsze n.p. 10m nad torem, ale moge rowniez podac y nad terenem. To jak z prawej dodam row, to drzewa w rowie beda nizej.
Tym samym doszlismy do "objektow terenu". Objekt terenu sklada sie z punktow. Punkt ma pozycje wzdluz osi toru (jak las; zawsze sie dopasuje do toru), odstep od osi, i wysokosc nad osia. Program potem laczy te punkty, i z nich "zwiesza" powierzchnie. Jak mam zakret, i chce, zeby ta linia tez skrecala, a nie byla bezposrednim polaczeniem tych dwoch punktow, to wlaczam automatyczne punkty co n.p. 10m, i wtedy program dodaje co dziesiec metrow punkt, wiec jak mam dwa punkty, jeden 3m od toru i 2m ponizej, a drugi 30m dalej, 4m od toru i 2m powyzej, i mam na tych 30m zakret, to wtedy, bez automatycznych punktow, jest prosta linia od punktu do punktu, i ewentualnie krzyzuje nawet tor. A jak wlacze te automatyczne punkty, program wygeneruje punkt na 15. metrze, 3.5m od toru i 0m nad torem, i przez niego przepusci linie, przez co znowu jest ona zalezna od osi. Zalezy, czego sie chce, raz sie je wlacza a raz nie. Rowniez w objektach terenu nakladam teksture na teren, n.p. trawe, beton, liscie, itp.
"Lange Rede, kurzer Sinn", dluga mowa a krotka tresc, jak to mowia Niemcy: Niby tez jest uklad descartes-ki, ale jego os Z sie zawsze skreca z torem, X tez, rpostopadle do toru, a Y z nim przesuwa w gore/dol (X,Y,Z troche dziwnie uzyte. Odnoszac sie do opisu stosowanego w rysunkach technicznych lub w matematyce wektorowej: X to x
2, Y to x
3 a Z to x
1) lokalnie. Wiec jak masz przebieg trasy z mapy, to potem ogladasz zdjecia i filmy z trasy, i widzisz: O, HM20/3, jest lasek po prawej, to ustawiasz na km20,3 lasek po prawej, i Cie nie obchodzi, czy byly jakies zakrety i jakie sa wspolrzedne wobec punktu 0,0,0, czy to jest teraz na 333m czy na 3333m n.p.m., bo to wszystko program robi sam. Widzisz: O, tu jest nasyp 3m, to definiujesz pod torem objekt terenu, ktory sie zaczyna 6m na lewo od toru na wysokosci -3m, 1m na lewo od osi wysokosc 0m, 1m na prawo 0m, 6m na prawo -3m, a dlugosc n.p. 300m, a teksture wybierasz zwirowa. A jak widzisz pagorek 200m na prawo, to robisz pagorek 200m na prawo, dokladnie ta samo metoda co nasyp.
Mam nadzieje, ze mi sie udalo troche wyjasnic, do czego Ra sie odnosi, mowiac o LokSim3D, a raczej w tym wypadku o LokSimEdit.
Julian