Simulator Railway Rusia (RRS): rilis umum pisanan

Dina sing ditunggu-tunggu wis teka nalika pungkasane bisa nampilake pangembangan iki. Proyek kasebut diwiwiti persis setahun kepungkur, paling ora tanggal 1 September 2018 Repositori RRS ing Gtihub komitmen pisanan wis persis tanggal iki.

Sepur penumpang ing stasiun Utama Rostov (bisa diklik)

Simulator Railway Rusia (RRS): rilis umum pisanan

Apa iku RRS? Iki minangka simulator lintas platform mbukak saka 1520 mm gauge rolling stock. Sing maca mesthi bakal takon pitakon: "Nyuwun pangapunten, apa proyek iki, yen ana jumlah simulator sepur sing cukup, komersial lan mbukak?" Kanggo njawab pitakonan iki, aku saranake nggoleki kucing

Riwayat proyek

Biyen, ing taun 2001, diterbitake Microsoft Train Simulator (MSTS), sing nimbulake komunitas sepur sing akeh banget ing negara kita. Sajrone pirang-pirang taun proyek iki ana (nganti Microsoft ditinggalake, pindhah menyang perkara sing luwih menarik, kayata kebangkrutan Nokia, lan liya-liyane), proyek kasebut entuk akeh tambahan sing digawe kanggo: rute, rolling stock, skenario.

Adhedhasar MSTS, sawetara proyek liyane banjur digawe, kayata OpenRails, RTrainSim (RTS) lan tambahan lan turunan liyane. Proyèk komersial uga muncul, kayata sing misuwur trainz. Lan kabeh bakal apik, nanging akeh penggemar transportasi sepur ora puas karo produk kasebut amarga alasan sing cukup objektif - padha ora nggambarake spesifik saham rolling domestik sing dioperasikake lan dikembangake ing ruang pasca-Soviet. Iki utamané akut nalika ndeleng carane rem Sepur dileksanakake - ora ana proyek kadhaptar wis utawa bakal duwe implementasine normal rem otomatis saka sistem Matrosov.

Ing taun 2008 sing ora adoh, proyek liyane muncul - ZDSimulator, dikembangaké déning Vyacheslav Usov. Proyèk iki luar biasa amarga njupuk menyang akun lan mbenerake shortcomings ndhuwur-kasebut, nalika pisanan fokus ing Rusia gauge rolling stock. Nanging ana siji "nanging" gedhe - proyek kasebut kepemilikan lan ditutup, kanthi arsitektur ora ngidini introduksi saham rolling dhewe.

Aku dhewe teka ing topik railway ing 2007, nalika aku wiwit makarya ing JSC VELNII, minangka peneliti peneliti, lan sawise mbela tesis Ph.D ing 2008, minangka peneliti senior. Nalika iku aku kenal karo prestasi paling anyar ing bidang game simulasi sepur nalika iku. Lan aku ora kaya apa aku weruh, lan project ZDSimulator ora ana ing wektu sing. Mengko, kepincut karo dinamika rolling stock, aku teka ing Rostov State University of Transport (RGUPS) kanthi topik disertasi doktoral babagan dinamika rem sepur barang. Dina iki aku mimpin pangembangan komplek latihan transportasi sepur kanggo universitas kita lan mulang disiplin khusus ing Departemen Traction Rolling Stock.

Gegayutan karo kabeh kasebut ing ndhuwur, muncul ide kanggo nggawe simulator sing bakal ngidini pangembang tambahan kanggo entuk kontrol lengkap babagan proses fisik sing kedadeyan ing rolling stock. Kaya simulator ruang Orbiter, sing nate ngembangake tambahan ing bentuk kulawarga kendaraan peluncuran adhedhasar R-7. Setahun kepungkur aku njupuk karya iki lan mbuwang dhewe menyang. 26 Desember 2018 weruh cahya ing kene demo teknologi iki.

Karyaku diweruhi dening para penggemar, lan kondhang ing bunderan simmer sepur, sing nggawe konten visual kanggo ZDsimulator Roman Biryukov (Romych Russian Railways) nawakake kula bantuan lan kerjasama ing pembangunan luwih saka project. Mengko pangembang liyane gabung karo kita - Alexander Mishchenko (Ulovskii2017), pangripta rute kanggo ZDsimulator. Kolaborasi kita mimpin kita menyang release pisanan kita. Video nuduhake sawetara ringkesan babagan carane game katon kanggo release pisanan

Fitur saka Simulator RRS

Kaping pisanan, iki minangka arsitektur piranti lunak sing mbukak. Ora kanggo sebutno kasunyatan sing kode simulator mbukak, ana API lan SDK ngarahke ing pangembang saka pihak katelu tambahan kanggo iku. Rintangan entri cukup dhuwur - katrampilan pangembangan C ++ dhasar dibutuhake. Simulator kasebut ditulis ing kono, nggunakake kompiler GCC lan varian MinGW kanggo sistem operasi Windows. Kajaba iku, iku saranake kanggo pangembang menowo karo framework Qt, wiwit akeh konsep sawijining underlie arsitektur game.

Nanging, kanthi rajin lan kepinginan, proyek iki mbukak kesempatan gedhe kanggo pangembang tambahan. Rolling stock dileksanakake ing wangun modul adhedhasar perpustakaan dinamis. Unsur struktural utama ing simulator minangka unit rolling stock, utawa unit seluler (MU) - mobil (non-self-propelled utawa minangka bagéan saka sepur sawetara unit) utawa bagean saka lokomotif. API ndadekake iku bisa kanggo nyetel torsi Applied menyang PE wheel mranata, nanggepi kacepetan sudut saka set wheel, uga paramèter external, kayata voltase lan jinis saiki ing jaringan kontak. Simulator ora ngerti apa-apa liyane lan ora pengin ngerti, sing ninggalake fisika peralatan internal menyang kalbu pangembang lokomotif utawa mobil tartamtu.

Iku ora angel kanggo guess sing pendekatan relatif kurang-tingkat ndadekake iku bisa kanggo ngleksanakake nuansa cilik saka sirkuit lokomotif. Kajaba iku, kit simulator kalebu pesawat saka peralatan standar diinstal ing rolling stock domestik: driver's train crane conv. No. 395, kondisi distributor udara. No. 242, kondisi katup rem tambahan. No 254 lan unsur peralatan rem liyane. Pangembang tambahan mung kudu nyambungake unsur kasebut menyang sirkuit pneumatik lokomotif utawa mobil tartamtu. Kajaba iku, ana API kanggo nggawe unit hardware dhewe.

Secara arsitektur, RRS dibangun ing interaksi rong proses utama

  • simulasi — dinamika Sepur fisik engine TrainEngine 2. Ngleksanakake fisika saka gerakan Sepur, njupuk menyang akun akeh faktor njaba, njupuk menyang akun interaksi obah Unit liwat piranti kopling, pangolahan data teka saka modul external sing ngleksanakake fisika operasi peralatan rolling stock.
  • panampil - subsistem grafis sing nggambarake gerakan sepur, dibangun kanthi basis mesin grafis OpenSceneGraph

Subsistem iki sesambungan karo saben liyane liwat memori sambungan, dipun ginakaken adhedhasar kelas QSharedMemory framework Qt. Demo pisanan digunakake IPC basis soket, lan ana plans kanggo bali menyang teknologi iki ing mangsa, njupuk menyang akun refinement sawetara bagéan saka simulator lan perlu karo mripat kanggo mangsa. Transisi menyang memori sing dienggo bareng ana sawetara langkah sing dipeksa sing wis umure migunani.

Aku ora bakal njlèntrèhaké nuansa - akeh owah-owahan pembangunan proyek iki wis mbatesi ing publikasi ing sumber, utamané, aku duwe cukup ekstensif. seri tutorial ing mesin OpenSceneGraph, sing tuwuh saka praktik nggarap proyek iki.

Ora kabeh sing ana ing proyek kasebut lancar kaya sing dikarepake. Utamane, subsistem grafis adoh saka sampurna babagan kualitas rendering, lan kinerja sim akeh sing dikarepake. Rilis iki duwe tujuan siji - kanggo ngenalake komunitas penggemar transportasi sepur menyang proyek kasebut, njelasake kapabilitas lan pungkasane nggawe simulator sepur lintas platform sing mbukak kanthi API canggih kanggo pangembang tambahan.

Prospek

Prospek gumantung marang sampeyan, pangguna lan pangembang ing mangsa ngarep. Proyek kasebut mbukak lan ana situs resmingendi sampeyan bisa ngundhuh simulator, saka dokumentasi, komposisi sing bakal terus diisi maneh. ana forum proyek, klompok VKlan saluran youtube, ngendi sampeyan bisa njaluk saran lan pitulungan paling rinci.

Matur suwun!

Source: www.habr.com

Add a comment