Posts Tagged ‘Operating Systems’

Transition curves and superelevated track created using the Object Bender tool, and Cross-City South v2.0 progress update

Posted by Anthony_B on September 5, 2010 at 07:30

Railsimroutes LogoI’ve been doing some more work on Cross-City South v2.0 during the past couple of weeks or so, and I’ve been making good use of odakyufan’s new Object Bender tool, where incidentally, the code was so well written and the functionality comprehensive enough, that Object Bender has been made into an official openBVE tool. Please see the new Object Bender section on the official openBVE homepage for more information: Developing for openBVE: Object Bender.

The output from the tool is such, that I’ve decided to replace all the curved track objects used in the Cross-City South route with new objects generated by Object Bender (from a set of “template” objects which form the intial segment in each type of track – please see here for an example of what I mean), and later I’ll do the same with Watford Junction to Rugby, too. I had already manually created a full range of suitable UK style track objects incorporating cant, as well as objects to be used in transition curves, however these objects had one rail lowered and the other raised in height, to suit the cant model used in older versions of openBVE (therefore enabling the wheels to be visibly touching the rails at all times in earlier versions). openBVE v1.2.7.3 features an improved superelevation model however, where one rail is raised above the other (which remains at the same level), so the existing objects were no longer so suitable.

I had started to make some progress in manually modifying my existing objects, however Object Bender has now saved me many days of work, possibly weeks, thereby preserving my sanity and enabling me to easily generate a much more comprehensive range of superelevated track and transition curve objects to create some very nice results, even better than what I’ve shown in Watford Junction to Rugby for a long time now. The slight downside is that the generated objects have a larger filesize compared to the objects I’d entirely hand-written, however Object Bender’s command line arguments also let me automate and recreate many hundreds of track objects, from a handful of source objects, with great ease via shell scripts. This benefit is simply too good to pass up – if I decide that I want to improve or alter my depiction of track in future, all I have to do is edit the handful of template objects and I can recreate the entire library of track objects with just a double-click. An example batch file for Windows users, based on the one which I’ve written for myself, can be found below, along with a sample shell script for Linux users too.

Here’s a selection of screenshots to demonstrate what nice results can be gained quickly, thanks to Object Bender and a little object building skill:

Screenshot Screenshot Screenshot Screenshot Screenshot
Birmingham Cross-City South v2.0 with superelevated track and transition curves, created via
odakyufan’s Object Bender tool. Also note the embankment (dike) with curved cable trough
in the last screenshot, with the vegetation handled via Object Bender’s /a command-line
argument (please see the Object Bender documention for a tutorial).

One problem I have encountered during the latest Cross-City South superlevated track upgrade so far, is how to accomodate pointwork (switches) on superelevated curves. There are examples of this at Longbridge, between Northfield and Kings Norton, and just after Kings Norton, too. On Watford Junction to Rugby, I took the easy option and handled such situations by transitioning back to uncanted track on either side of points (only with the visual representation of the track – the cant applied via the .Curve command remained constant throughout the points). With Cross-City South v2.0, I’ve decided to gradually alter the height of the other tracks leading towards and away from crossovers connecting superelevated tracks instead, while also rotating the point objects around the Z-axis. This way, the crossover itself is superelevated to the same degree as the tracks being crossed between, which looks better visually, and I presume it’s also more prototypically accurate. Here’s an example between Northfield and Kings Norton, with some new custom pointwork objects I’ve been working on for this location (amongst others):

Screenshot Screenshot Screenshot
Birmingham Cross-City South v2.0 with superelevated track and custom-built crossovers.
Note the clamp-lock point machines, too.
Note: For those of you familiar with the real Cross-City South, please be aware that these screenshots depict the line prior to the recent track renewals on the real-life route. I’ll work on the renewed track (plus such changes as the upgraded 70mph / 112km/h sections beteween Redditch and Northfield), once I’ve sorted out a few more remaining tasks along the route, such as realigning overhead wire objects due to altered curve radii, improving the stations, and finishing the remaining scenery objects which need to be updated with new textures, 3D trees and vegetation.

Object Bender has most definitely made route building easier and more enjoyable for me, however one problem which needed to be solved, was that when a track object is superelevated, the terminating height of the ballast shoulders on either side of the sleepers is also altered. In a route, and depending upon the design of the track objects, this can lead to gaps appearing between tracks running side-by-side, and between the ballast portion of the track objects and dikes (i.e. the embankment beneath the track):

Screenshot
Depending on the design of track objects, gaps can appear
between the ballast shoulder and dike, or a parallel track,
when superelevation is applied via Object Bender.

I’ve solved this problem, by expanding the ballast shoulder in the track object to include two faces at increasing angles, such that at the maximum level of visible cant I’ll ever apply in my routes (160mm in my case), no gaps appear and the cable trough isn’t obscured, while I can continue to use only one template object for creating the full range of curved track pieces, at differing degrees of superelevation, via Object Bender. The ballast portions of the dike objects are also extended. This solution does lead to more faces being rendered, but hopefully it’s not too much of an issue, performance wise. Here’s a screenshot:

Screenshot
Extended ballast shoulders in both the track and dike objects,
to remove visible gaps when cant is applied via Object Bender.

Screenshot Screenshot
Screenshot Screenshot
On the left, are the original objects, and on the right, the new versions. Note the custom vertex normals
applied to the ballast shoulders in the last screenshot, to help remove the angled appearance
which might otherwise be visible with certain lighting parameters.

Object Bender supports some markup which can be applied to template objects before they’re processed, for example, to determine the desired texture coordinate shifting in generated segments (please see the Object Bender documention on the openBVE homepage for more information – I think the tutorial is clear enough that I don’t need to explain it further). I was originally going to suggest expanding the supported markup a little, so that Object Bender could be instructed to leave the X and/or Y coordinates of any vertex as it is in the original template object, which would for example, solve the ballast shoulder issue above in an easier way for the object creator. However, I quite like the appearance of the solution I came up with, so I don’t think such a change to Object Bender is too important, but might be nice to have, nevertheless.

Lastly, for more advanced users, or beginners feeling more adventurous, here’s a sample batch file for Windows users, and a bash script for Linux users, which you can adapt and expand if you want to automatically create a range of curved objects using Object Bender’s command line interface, rather than the GUI. There is a simple example of a suitable batch file included in the Object Bender documention, however rather more can be done with batch files/shell scripts. These following example scripts use variables to reduce the amount of duplicated text that you might otherwise need to type, and they also create a logfile which you can read, which is handy if you’re generating a large number of objects, to more easily check for any errors which might have occured during a lengthy object bending batch process.

For the Windows batch file, you need to give it a .bat extension. The text highlighted in red (including the less/greater than characters), should be replaced by any paths or filenames which are appropriate for your purposes. Where <Your_File_To_Append> is concerned, this object file could contain fishplates for example, or overhead wires, which are appended to the object generated in the previous line (please see here for more information). You can see fishplates added to my curved wooden sleeper based track objects in the above Cross-City South v2.0 screenshots – this is how they were appended to the files generated via Object Bender.

Sample batch file using Object Bender to automate curved object creation (Windows users):

@echo off

rem Set variables (paths and extension for all files)
set objectbender_path=<Path_To_Folder_Containing_ObjectBender>\
set exe=ObjectBender.exe
set obj_source=<Path_To_Your_Source_Object_Folder>\
set obj_final=<Path_To_Your_Route_Object_Folder>\

rem Clear the screen and ask user for confirmation
cls
echo Proceed with object creation? This will overwrite any existing files.
echo Press Ctrl+C to cancel, or any other key to proceed . . .
pause > nul

echo.
echo.
echo Processing files and creating log. Please wait . . .

rem Create a new log file with time stamp
echo ___________________________________ > %objectbender_path%objectbender_log.txt
echo New log [%date% at %time%] >> %objectbender_path%objectbender_log.txt
echo. >> %objectbender_path%objectbender_log.txt

rem Use Object Bender to create finished objects from templates

rem 500m right curve
%objectbender_path%%exe% %obj_source%<Your_Source_File> %obj_final%<Your_500m_Right_Track_Object> /n=5 /s=5 /b=25 /r=500 /g=1435 /u=80 /v=80 >> %objectbender_path%objectbender_log.txt
%objectbender_path%%exe% %obj_source%<Your_File_To_Append> %obj_final%<Your_500m_Right_Track_Object> /a /n=1 /s=25 /b=25 /r=500 /g=1435 /u=80 /v=80 >> %objectbender_path%objectbender_log.txt

rem 600m right curve
%objectbender_path%%exe% %obj_source%<Your_Source_File> %obj_final%<Your_600m_Right_Track_Object> /n=5 /s=5 /b=25 /r=600 /g=1435 /u=80 /v=80 >> %objectbender_path%objectbender_log.txt
%objectbender_path%%exe% %obj_source%<Your_File_To_Append> %obj_final%<Your_600m_Right_Track_Object> /a /n=1 /s=25 /b=25 /r=600 /g=1435 /u=80 /v=80 >> %objectbender_path%objectbender_log.txt

rem 700m right curve, etc. . .

Linux users can adapt the following shell script to make use of Object Bender for automating the creation of multiple files. Your script should be given a .sh file extension, and be made executable (for example: chmod +x myscript.sh). The script can be executed from the Terminal prompt by typing, for example: ./myscript.sh). Don’t forget that Object Bender requires Mono to be installed, too.

Screenshot
Important note: Object Bender determines whether a command line argument is a pathname, or another command line argument, based upon whether or not the argument string begins with a ‘/’ character. In Unix based operating systems, this character is the directory separator character, so if you supply a path which begins with ‘/’ (such as /home/username/etc), it will be interpreted as a command line argument which is other than a pathname, and the tool won’t work as expected. You can get around this by supplying relative pathnames (i.e. ../yourfolder/etc), or by using the following modified version of the tool, in which I’ve altered the program to intepret the ‘-’ character as a non-path command line argument instead (the recompiled executable is temporarily available here, with source code modifications here as well (also requires the official Object Bender source code from the openBVE homepage). The following script assumes the modified executable is being used:
Sample shell script using Object Bender to automate curved object creation (Linux users):

#!/bin/bash

# Set variables (paths and extension for all files)
objectbender_path=<Path_To_Folder_Containing_ObjectBender>/
exe=ObjectBender.exe
obj_source=<Path_To_Your_Source_Object_Folder>
obj_final=<Path_To_Your_Route_Object_Folder>

# Clear the screen and ask user for confirmation
clear
echo "Proceed with object creation? This will overwrite any existing files."
read -s -n 1 -p "Press Ctrl+C to cancel, or any other key to continue . . ."
echo
echo
echo "Processing files and creating log. Please wait . . ."

# Create a new log file with time stamp
echo _____________________________________ > $objectbender_path/objectbender_log
echo New log [$(date)] >> $objectbender_path/objectbender_log
echo >> $objectbender_path/objectbender_log

# Use Object Bender to create finished objects from templates

# 500m right curve
mono $objectbender_path/$exe $obj_source/<Your_Source_File> $obj_final/<Your_500m_Right_Track_Object> -n=5 -s=5 -b=25 -r=500 -g=1435 -u=80 -v=80 >> $objectbender_path/objectbender_log
mono $objectbender_path/$exe $obj_source/<Your_File_To_Append> $obj_final/<Your_500m_Right_Track_Object> -a -n=1 -s=25 -b=25 -r=500 -g=1435 -u=80 -v=80 >> $objectbender_path/objectbender_log

# 600m right curve
mono $objectbender_path/$exe $obj_source/<Your_Source_File> $obj_final/<Your_600m_Right_Track_Object> -n=5 -s=5 -b=25 -r=600 -g=1435 -u=80 -v=80 >> $objectbender_path/objectbender_log
mono $objectbender_path/$exe $obj_source/<Your_File_To_Append> $obj_final/<Your_600m_Right_Track_Object> -a -n=1 -s=25 -b=25 -r=600 -g=1435 -u=80 -v=80 >> $objectbender_path/objectbender_log

# 700m right curve, etc. . .

exit 0

If you need any help with using Object Bender or writing scripts to automate curved object creation, please feel free to ask. :)

openBVE v1.2.5, Watford Jn. to Rugby progress, class 390 Pendolino, other developer’s add-ons, Cross-City South bugfix, and one million visits

Posted by Anthony_B on January 31, 2010 at 17:50

openBVE v1.2.5.0 released

openBVE LogoopenBVE v1.2.5.0 was released a few days ago, and various changes have been made to openBVE since my last blog entry. In this release, the main form (i.e. the window for route selection, setting options, etc.) is smaller so that it can be used on smaller screen sizes (e.g. 800×600) or with larger fonts, and if the window is resized, the new size is saved between sessions. The player’s train now derails when passing the end of the track, as well.

Michelle has also written an impressive RIFF/RIFX/WAV PCM/ADPCM parser, which she’s ported from openBVE’s successor to openBVE 1. This removes the need for two dependencies, namely ALUT and SDL, and her parser supports a wider range of sampling rates. Other improvements recently, include a shortening of loading times for routes using detailed animated objects (which eventual users of the projects being developed here will appreciate). Also, there’s the addition of the $Include preprocessing directive which allows text in other files to be parsed in place of the directive in a route file (with random selection of multiple included files), and point-based turns (via the .Turn command) are smoothened out, which gives much more pleasing results. Please see » this thread « for more discussion about these latter features.

Head over to the » openBVE homepage « to try the latest v1.2.5.0 release, and you can read the changelog for further details. Remember that the » developer tools « have also been updated as well.

Horizontal Rule

Watford Junction to Rugby progress update

Railsimroutes LogoIt’s been quite a while since I posted any updates regarding my routes, so I thought you might like to know what’s happening with the Watford Junction to Rugby project this time. I’m relatively happy with the state of the permanent way and between-station railway related lineside objects, so I’m now implementing some more scenery enhancements, including improved under-bridge shadow effects, moving road vehicles, and lineside buildings. I’ve also, at last, started working on the stations and so far I’ve created new photo-realistic lamposts, photo-realistic 3D platforms, and various signs.

Previously, the underbridge shadows I’d implemented were simple untextured meshes with alpha applied via the SetColor command. In addition, I’ve now applied a small 8×8 pixel texture where the outer 28 pixels act as the transparent color, and the inner pixels are nearly black. When this texture is applied to the existing shadow meshes and the color adjusted accordingly, smoothly transitioned shadows can be achieved. I’ve also added deeper shadows to the sleeper textures to improve the appearance of the track, and added more blue colouration along with reducing the lightness of the railhead, to make the rails look a little more metallic. I’m also implementing shadows cast by platforms and embankments as well. The way in which I’ve implemented the latter can give the appearance of dappled sunlight caused by trees, and increases the effect of warmth created by sunlight and the realism of locations within cuttings, although this feature will be optional in the final release as there’s a possibility that it may incur a performance penalty on slow graphics cards. Lastly, I’ve added some new photographic backdrops which I’m experimenting with at the moment. Take a look at the following screenshots to see how the route is coming along (please note that there may be some inaccuracies, as the route shows trackwork or infrastructure as it was in different eras simultaneously at the moment):

openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge openBVE v1.2.5 and Watford Junction to Rugby--click to enlarge
openBVE v1.2.5, and Watford Junction to Rugby with new lineside buildings, station details, road vehicles, scenic shadows, and backdrops.
All screenshots taken at 1920×1200 resolution, with openBVE’s smooth transparency enabled, and 16xQ anti-aliasing/16x anisotropic filtering (Core 2 Quad Q9650 at default 3GHz, and GeForce GTX 260 55nm)
Horizontal Rule

Class 390 Pendolino

Railsimroutes LogoSome of you may remember that the class 390 Pendolino was given an » openBVE exterior car update « some time ago, thanks to Cramaboule. I’m pleased to announce that I’m now working with Cramaboule to produce some detailed exterior models of a similar quality to the class 323 I’ve demonstrated previously, along with a full 3D cab, so there will be some more nice looking rolling stock to run on Watford Junction to Rugby. I’ll post some screenshots as the models are developed, but for now here are some photos of what we can look forward to:

Class 390 Pendolino photograph (Milton Keynes, June 2005)--click to enlarge Class 390 Pendolino photograph (Milton Keynes, June 2005)--click to enlarge Class 390 Pendolino photograph (Cheddington, June 2005)--click to enlarge Class 390 Pendolino photograph (Old Linslade, October 2004)--click to enlarge
Class 390 Pendolino photos (1400×1050)
Horizontal Rule

Other more recent openBVE add-on releases

Information IconSince my last blog entry, some high quality openBVE add-ons have been released. Just in case anyone missed these releases, here are some screenshots and links to some excellent new add-ons with rather beautiful graphics:

Note: All screenshots taken at 1920×1200 resolution, with openBVE’s smooth transparency enabled, and 16xQ anti-aliasing/16x anisotropic filtering (Core 2 Quad Q9650 at default 3GHz, and GeForce GTX 260 55nm)
openBVE v1.2.5, FEVF Railway and EM A1 3D cab--click to enlarge openBVE v1.2.5, FEVF Railway and EM A1 3D cab--click to enlarge openBVE v1.2.5, FEVF Railway and EM A1 train--click to enlarge
FEVF Railway and EM A1 3D cab.
Homepage: » FEVF Railway «
Horizontal Rule
openBVE v1.2.5, mtrain HD v2.0 and Hong Kong Island Line--click to enlarge openBVE v1.2.5, mtrain HD v2.0 and Hong Kong Island Line--click to enlarge openBVE v1.2.5, mtrain HD v2.0 and Hong Kong Island Line--click to enlarge
mtrain HD v2.0 and Hong Kong Island Line.
Homepage: » winsome’s Studio « | » Hong Kong Island Line «
Horizontal Rule
openBVE v1.2.5, First Brno Track and CD163 plus coaches--click to enlarge openBVE v1.2.5, First Brno Track and CD163 plus coaches--click to enlarge openBVE v1.2.5, First Brno Track and CD163 plus coaches--click to enlarge
First Brno Track and CD163 plus coaches.
Homepage: » Brno BVE Website «
Horizontal Rule
openBVE v1.2.5, Guaianazes-Estudantes route and CAF 440 train--click to enlarge openBVE v1.2.5, Guaianazes-Estudantes route and CAF 440 train--click to enlarge openBVE v1.2.5, Guaianazes-Estudantes route and CAF 440 train--click to enlarge
Guaianazes-Estudantes route and CAF 440 train
Homepage: » BVE Brazil Fans «
Horizontal Rule

Upcoming openBVE projects to keep an eye on…

Information IconThere are a couple of new projects in the works which I’m personally very much looking forward to seeing, namely » Odakyufan’s « representation of the Odakyu Odawara Line running from Tokyo’s Shinjuku station, and the new Iida line currently being developed. The latter will of course be known to BVE users as one of Gaku’s classics (see my links page), but the new Iida line, train and exterior car objects being developed at » http://mus-iida.jpn.org « look beautiful and very realistic so far.

Some superb early screenshots of » Odakyufan’s « representation of the Odakyu Odawara line were also published a little while ago. The Odawara line starts from Tokyo’s busy Shinjuku station, and the line is well known for it’s Romancecar limited express services for tourists visiting Odawara and the surrounding resorts, but it’s also a busy commuter route and the Odakyu Electric Railway uses it’s own OM-ATS safety system, which will be simulated in a semi-realistic way due to the absence of detailed technical information. Odakyufan has a goal of modelling at least the first five stations, and this will be interesting to see, as this section of the line is surrounded by densely packed buildings. The screenshots showing the exit from Shinjuku station, Japanese 1500V DC catenary and Tokyo’s buildings all look very promising indeed, and easily recognisable, even at an early stage of development.

Odakyu Odawara line -- click to visit homepage Odakyu Odawara line -- click to visit homepage Odakyu Odawara line -- click to visit homepage
Homepage: » The Web Presence of Odakyufan «
Horizontal Rule
mus-iida.jpn.org -- click to visit homepage mus-iida.jpn.org -- click to visit homepage mus-iida.jpn.org -- click to visit homepage
Homepage: » http://mus-iida.jpn.org «
Horizontal Rule

Cross-City South bugfix

Railsimroutes LogoI’ve uploaded an update for Cross-City South v1.31, which fixes the following issues:
  • Incorrect pathname in route files using the class 323 passenger views.
  • The ground repeater signal prior to Birmingham New Street station is now accurately modelled, such that the red aspect is nearest to the driver (i.e. the signal is as though it were upside down now, as in reality). Many thanks to Paul Sladen for pointing this out.
  • In the night routes, “P” has been added as the ArrivalTime argument of the Five Ways .Sta commands (to indicate that trains are not meant to stop). Thanks again to Paul for bringing this omission to my attention.
  • Also in the night routes, the repetition count for Background(0) has been added, which was missing previously, leading to a horizontally compressed background image.

Existing Cross-City South v1.31.03 users can simply download a small update to v1.31.05 here: xcs_1_31_05_update.7z [180 KiB]. If you’re using a version earlier than v1.31.03, you might be better off downloading the full route pack again, which also now includes the aforementioned update. The previously separate class 37 and 158 route files are now included in the main download as well. Please also note that BVE 4 doesn’t work on my current Windows 7 64-bit/NVIDIA GeForce GTX 260 setup, so this update has only been tested in openBVE, as it’s inconvenient having to dual boot or use another computer every time I want to check some minor thing in the old BVE 4. There aren’t any changes which should affect BVE 4 users, but if any issues arise, please let me know with as much detail about the problem as possible, and I’ll investigate.

Horizontal Rule

Finally…

Railsimroutes LogoI noticed that the site has had it’s one millionth visit today (as opposed to page view), insofar as it’s possible to measure such things — the actual number of users of my routes will likely number in the low thousands, of course. Thank you to everyone who has taken an interest in my work during the eight or so years since this site was launched!

Jaunty Jackalope and openBVE

Posted by Anthony_B on April 25, 2009 at 08:42

Ubuntu 9.04 “Jaunty Jackalope” (which is a Linux distribution for any dear readers who may not be particularly au fait with the wonderful world of operating systems…), has just been released. With this version, it’s possible to install a seperately packaged, unofficial version of openBVE maintained by Paul Sladen (currently at v1.0.2.0; the » official openBVE « release is at v1.0.3.0 at the time of writing) via the ‘Applications’ > ‘Add/Remove…’ menu item (I haven’t used Kubuntu in a while and I’ve forgotten what the equivalent in KDE is). A specially prepared, public domain version of the Cross-City South route (v1.31.03) is also installed automatically when openBVE is installed via this method, along with a reduced functionality (plugin DLLs don’t work on non-Windows operating systems), public domain version of the class 323 which Steve over at » trainsimcentral « also kindly donated.

X-City South v1.31.03 is just a cut-down version of the public release available from this site, with the copyright files removed and alternative backdrops added, and fewer route files; I prepared it so that openBVE could be considered for inclusion in Ubuntu’s list of installable open source applications, as for a game engine to be accepted, it requires some equally permissively licenced game data to be supplied with it. Eventually the Ubuntu X-City South package should be identical to the official X-City South v1.4 package once it’s been released, and I hope to send any updates to Paul so the Ubuntu version is kept up-to-date; by implication, X-City South v1.4 will be entirely copyright free as well. Any copyright material, like the Birmingham New Street announcement audio files, will be available as an optional extra only.

After installing the latest ATi Catalyst drivers (and, at last, my Radeon HD 2600 Pro graphics card finally works with Ubuntu), it was nice to see openBVE running in Linux myself, and with decent framerates too. The framerate in the first screenshot of XCS v1.31 was 80 fps (90 fps in Win XP), and in the third screenshot, showing XCS v1.4, 17 fps (20 fps in Win XP). The latter screenshot actually includes more animated trees than will feature in the final XCS v1.4 release though, and in-cab, I was seeing up to 30 fps):

openBVE v1.0.2.0 running in Ubuntu 9.04--click to enlarge openBVE v1.0.2.0 running in Ubuntu 9.04--click to enlarge openBVE v1.0.2.0 running in Ubuntu 9.04--click to enlarge

I admit there was also some momentary fascination after I turned on Ubuntu’s “Extra” visual effects option which enables hardware accelerated graphical effects to be applied to windows, and watched my X-City South v1.4 development route carry on running at 25-30 fps while I distorted and bounced the poor helpless openBVE window around the desktop (sorry I wasn’t able to capture a screenshot, just a low quality video still):

openBVE v1.0.2.0 running in Ubuntu 9.04

I may be finding that framerates are just a bit lower than in Windows XP, but they’re still good and I enjoy using openBVE in Ubuntu instead. The application’s forms all rendered nicely although the loading and error dialogs remained visible once the SDL window was created; I’ll carry on testing it and see if I notice any other issues.

Any Windows users who might be considering trying openBVE on Ubuntu, should remember that plugin DLLs don’t work natively on non-windows operating systems, so various functions in BVE 4 trains like TPWS won’t work. For this functionality to be available in Linux, you’ll need to use openBVE with Wine instead, which isn’t quite as easy to set up (I haven’t personally had time to try it yet, but as shown in this » YouTube video of the Northern Line « for example, if you do go to the trouble, it’s well worth it).

Information Icon Edit (1st May ’09): I have tried and succeeded in getting openBVE v1.4.0.1 running with Wine and Mono 2.4 for Windows in Ubuntu since this entry was published, and it was quite easy after all. See the comments for more. :)