The following is what I think should be tackled for the next major release. Of course, Open Rails is maintained by a few dedicated volunteers and these suggestions should not be interpreted as obligations or criticism, just as constructive ideas.
Revamp the website of Open Rails (openrails.org): The website gives the first impression of the simulator to new users, thus it is vital to keep it up to date and easy to use. In my opinion, the website would benefit from some updates:
- some pages are outdated, some elements are broken: the widget in the footer is no longer functional and could be removed; "Changes since last visit" does not work; many commercial vendors' websites are no longer online as listed on the Trade page; etc...
- the code is duplicated: there are two GitHub repositories which both contain the code of the website, one could be eliminated
- the website has not been translated into languages besides English: if the website was translated into more languages, potentially more people would discover it
Improve the quality of the water: The visuals in OR are quite good and well-crafted routes look stunning, however, the quality of the rendered water is a let-down. I know that the primary objective of a train simulator is to have realistic physics - which OR already excels at - yet I believe some "eye-candy" (as others call it in some threads on ET) is needed to make the simulation more immersive and realistic. I'm also aware that there are very few active OR developers left - and practically only a handful of them are at ease with the 3D part of the code - but I think that some minor improvements should be doable. Unfortunately I'm unable to help here because my underpowered laptop cannot handle Visual Studio and compiling OR in a timely manner (my C# knowledge is pretty lacking as well). However, I have found a tutorial (chapters 7 to 14) that implements fairly realistic 3D water in XNA (which could be converted to MonoGame - AFAIK, there aren't many breaking changes introduced by the latter framework). The guide even covers ripples influenced by wind direction. The results look promising:
https://github.com/simondarksidej/XNAGameStudio/raw/archive/Images/Riemers/3DXNA4-14Specular3.jpg?raw=true
Adopt new file formats: There have been plenty of discussions on ET about adopting new, more efficient and more flexible file formats for OR. The old, rigid MSTS SIMIS file format is limiting the development of the simulator. I believe now is the time to consider supporting new file formats at the expense of breaking backwards compatibility with MSTS with regard to new routes. When OR was started, MSTS compatibility was crucial to the success of the project but now, two decades later, I don't know why anyone would prefer MSTS over Open Rails. What's more, most routes and rolling stock made recently are already incompatible with MSTS (for an example, see this thread on .eng files).
In my opinion, implementing a replacement for shape (.s) files should be prioritised. Thanks to Péter Gulyás' remarkable efforts, the unstable version of OR already supports glTF files, which could one day replace .s files. glTF is an industry standard in 3D modelling, therefore, route builders would be able to find more freeware 3D models and create routes faster. Moreover, all modern 3D editors support glTF, notably Blender. Finally, glTF adds support for Physically Based Rendering (PBR) and is optimised for fast loading.
Multiple MSTS files could be merged into one new file format too, as suggested by Ryan in this thread. JSON looks like a good option and the developers may also consider supporting JSON5, a superset of JSON that is easier to write and maintain by hand (very useful for configuration files). The .NET libraryJson.NET by Newtonsoft can handle JSON5.
One caveat of adopting new file formats is that we will need new editors but AFAIK Goku has stopped working on TSRE5. This is why I have started to develop a new Tauri program to fill the gap. Currently, I'm implementing a conversion tool between .s and glTF files and I would like to build a simple consist editor as well in the future once we agree on a new file format to use.
That's all for this post! Please share your reactions, ideas, and propositions! http://www.elvastower.com/forums/public/style_emoticons/default/sign_thank_you.gif