Open Rails development has been coming along quite well, particularly in testing the adaptation of the Monogame framework. (Monogame is the open-source adaptation of Microsoft’s XNA4 platform.) The Monogame platform brings some significant performance improvements, with better handling of memory and DirectX that makes Open Rails perform better and run more smoothly with large, complex routes and scenery than ever before. (Note, however, that the monogame implementation requires Windows 7 to run. It can’t run on Windows XP.)
It’s already been decided that Monogame is the way ahead for Open Rails, since it’s an open, actively developed platform for modern computers. A large portion of the development work this year has been in preparing and testing the Open Rails code base to move onto the Monogame framework. It might not seem as ground-breaking as, say, the introduction of working turntables, but in reality it’s even more important, since it moves the core software off of the old closed XNA framework which will eventually go end-of-life and onto a modern, open-source platform which will continue to support modern computers and operating systems.
Along the way, the source code repository has moved to GitHub, which makes it easier for developers and experimenters to create alternative forks of the project, and for those changes to eventually be folded into the main branch of development, if desired. That’s how the Monogame project began, as an independent fork to test the possibilities. After much testing and hard work, the Monogame fork’s progress is steadily being integrated into a new “Unstable” branch alongside the ongoing “Experimental” branch of Open Rails. This is in preparation for the eventual migration to Monogame for the main and Experimental branches.
There’s also a fork of the project that overhauls RailDriver support in Open Rails. Github user and Open Rails experimenter “perpetualKid” has been working on improving how the RailDriver is handled. The sluggish response of the RailDriver controls has been addressed. Control response is now quick and accurate. The improved RailDriver code includes the ability to re-map the RailDriver’s buttons and controls, just like the existing ability to re-map the keyboard inputs. And there’s a built-in calibration system that works hand-in-hand with the improved control behavior.
Continue Reading…