ltrain
SourceForge.net Logo

english version czech version

Záměr

Touha jezdit s mašinkami je možná tak stará jako samotná skutečná železnice. Zatímco donedávna tuto potřebu uspokojovaly železniční modely, dnes ji můžeme naplňovat i na obrazovkách osobních počítačů. Železničních simulátorů existuje celá řada, některé sázejí na fotorealistickou 3D grafiku, jiné jen schematicky znázorňují pohyb vlaku. Některé jsou řešeny jako (především ekonomické) hry, jiné se zase snaží správně postihnout všechny aspekty železničního provozu. Jsou však i vlastnosti, které nemá žádný ze současných simulátorů:

  1. Možnost výběru operačního systému. Prakticky všechny simulátory jsou vyvinuty pro MS Windows, přitom lidé dnes dávají přednost také jiným operačním systémům. Je to i otázka ceny za legální licenci OS.
  2. Možnost hraní více osob najednou, nejlépe přes síť, což je běžná možnost u spousty her a v železničním simulátoru chce přece každý řídit svůj vlak zatímco další se mohou zúčastňovat třeba jako výpravčí.
  3. Možnost zlepšovat funkčnost simulátoru. Většina programů sice umožňuje vytváření vlastních objektů (tratí, vlaků, budov), základní engine je však uzavřený a to nejen u komerčních produktů, ale i u freewarů. U každého ze současných simulačních softwarů se dá vyjmenovat pár závažných vlastností, které mu chybí. Má je sice konkurenční produkt, ale tomu zas chybí něco jiného. Platí to nejen pro freewary, které jsou výsledkem práce jednotlivců v jejich volném čase, ale i pro komerční produkty, které vyvíjejí celé týmy. Přitom se v dnešním světě najde spousta lidí, kteří by uměli a chtěli přispět k vývoji simulátoru, kdyby byl otevřený. Takový však neexistuje.

Proto jsme se pustili do tohoto díla a rádi bychom k němu přizvali všechny, kdo by s ním chtěli pomoci.

Základní rysy tohoto projektu jsme vytyčili takto:

  1. Nezávislost na platformě a typu sítě
  2. Open source pod GNU licencí, což umožní kooperativní vývoj s využitím možností Internetu
  3. Architektura klient - server. Oddělením serverové části získá software další možnosti jako je poměrně jednoduchá implementace síťových možností. Rozdělením jednotlivých úkolů mezi server a klienty lze dosáhnout žádoucí škálovatelnosti, co se týká nároků na výkon. To se projeví zejména při multiplayeru o větším počtu hráčů. Komunikace mezi klientem a serverem bude probíhat standardními a osvědčenými metodami přes protokol TCP/IP.
  4. Souborové struktury v XML formátu
  5. Zdrojové kódy v jazyce C
  6. Vícevláknová architektura se společnými datovými strukturami, což zjednoduší rozšiřitelnost programu
  7. Grafika v OpenGL (nebo vyšší knihovně postavené nad OpenGL) s pohledem šikmo zhora s možností natočit nebo přiblížit si pohled. Při bližším pohledu se otevře více detailů. Dále pohled z kabiny lokomotivy na trať
  8. Železniční provoz co nejvíc odpovídající realitě včetně funkce zabezpečovacího zařízení

Poslední změna: 5. února 2004