Editorial: Rail3D 2kD Reaches Build 100|
By Alan Perryman
Date: 16 June 2006
Rail3D has reached a milestone - the 100th build of the '2kD' edition is now available to download.
The Rail3D railway simulator first appeared in 1999. The author and main developer of the program is Mark Goodspeed, known to many enthusiasts for his Railway32 screensaver.
Mark's objective in writing Rail3D was to produce a railway network simulator, which could model a complete railway system with large numbers of trains responding to signals and timetables and interacting with each other. Although there are and were many cab-based train simulators and virtual model railway programs, the only other real network simulator is Jan Bochmann's well-known DOS program Bahn. This was designed primarily as a tramway simulator and has very little support for train dynamics, and does not attempt to model the signal systems used on main line railways.
The first versions of Rail3D were based on an isometric view of a rectangular grid, as in Bahn, but had full support for British-style multiple-aspect automatic and controlled signals. Another important difference from Bahn was the straightforward, intuitive user interface. The ease of track laying and layout construction has endeared Rail3D to many users - especially younger railway enthusiasts. To lay track, all you have to do is drag with the mouse; right- clicking on the track brings up a context menu for placing signals, stops and other special track features.
|Rolling stock and scenery items for use in the program can be built using a simple vector modelling language. No extra software or advanced 3D modelling skills are required: users have contributed many hundreds of models over the years. Although the emphasis continues to be on British practice, there are models available for many other countries, particularly Portugal, Switzerland, Germany and the Netherlands. The Internet Rail3D user group currently has around 900 members.
Rail3D has been evolving steadily since it was first released. Important innovations have included custom colour- light and semaphore signals; signal panels allowing manual control of signals; the ability to drive trains by hand; a full 3D-graphics mode using DirectX and some support for curve-smoothing to hide the limitations of the rectangular grid.
||A major upgrade came in 2003 when Mark started work on an entirely new program, provisionally called Rail3D 2k3 (later Rail3D 2kD), which would use a single graphics mode based on D3D in "immediate mode", and which would abandon the grid, allowing the free placement of track. In the course of creating the new program, many other new features requested by users of earlier versions have been incorporated, but throughout the development process the aim has been to keep what was best about earlier versions, in particular the simple user interface, and the enormous investment of the user community in stock and scenery modelling.
What makes Rail3D special?
Rail3d is a work-in-progress, and does not aim to be a finished commercial product: driven by feedback from the user community and his own passion for railways, Mark is constantly adding new features and refining existing ones. Features include:
- The signalling model is much improved over many other offerings and though it is based around the UK practices it is possible to model many other systems without difficulty.
- Ease of 'layout creation'. You donít need to know any complicated programming script to create a layout. Just lay track, add features such as Stops / Reverses to this track and add trains.
- Ease of AI 'programming'. Once youíve laid track and started to add trains you can mark out routes and timetables using a windows interface.
- Large Scope - layouts can be up to 655km x 655km in size.
- No additional tools required. You donít have to download any 3d modelling programs to create objects, though from build 100 there is a plugin for 3d canvas pro to allow those who prefer this program to use it instead.
- A major update to the signalling model.
- A layout map (something present in the original Rail3D)
- Improved Pantographs
- New syntax in the object files to allow 3d programs to be used to create models and a plug-in for 3d canvas
- Faster rendering
While traditional signalling systems provided the signaller with a Lever Frame to operate each individual signal or switch, since the 1940s it has become more common to provide a system where the signaller sets up logical 'routes' for train movements on a diagram of the track layout. The simplest form of this is the 'NX' (Entrance-Exit) panel, where the signaller has to press a button at the start-point of the route and another at the end-point. The internal logic of the system checks whether this route is permitted by the interlocking, then sets all the necessary switches before clearing the signals.
Rail3D normally does something like this for you 'behind the scenes', setting routes for trains automatically as required. By creating a signal panel, you can take over manual control of all or part of your layout.
Both Lever Frame and NX Panels are present in Rail3D build 100.
A short signalling demo video can be found at
All the images and video have been taken from the 'Charnton Road' layout package, available with build 100.
How do these frames work?
Once you have signed into the signalbox you are in control of:
A starter signalbox - "Marton"
- Accepting Trains
- Dispatching Trains
- Operating Signals
- Operating Points, including Facing Point Locks (known as "FPL")
Marton is the starter 'box on the demo layout. When you sign into the box you'll see 12 levers - but only six of these actually work.
The white levers are spares.
There are two bells - one 'up', one 'down'. Finally, you have the train register. This is your log of all traffic passing the signal box.
Compare the above register with a real one from Consall (Churnet Valley Railway, Staffordshire)
Each lever is colour coded to the type of action it performs. Marton is a small signal box that only controls signals. Once you add some points there are many more levers.
This is 'Benton' signal box. A diagram is provided to show where trains are - each spot will glow red if a train is present at that point. The diagram is also a handy reference to exactly what each lever controls.
For someone who likes a challenge the layout also provides a 66 lever signal box - 'Charton Road'.
Additionally, the lever frames are first area of Rail3D to have sound. Bells are used within the signalling environment to communicate with other signallers - in this case the computer.
Rail3D classic featured NX panels, and as of build 100 they have become part of 2kD.
This example comes from the Crewe package. Setting a valid route will clear the signals and allow trains to proceed. As there is less to do in an NX panel the areas they cover are much bigger. Imagine how many levers you would need to control the diagram above!
You can track the progress of trains by following the red lines. At certain sections youíll be able to see the trainís describer so you to know where to route the train to. A stopped train will communicate with you by changing colour to prompt you it is ready to move.
This opens a window with an overview map of your layout. The positions of trains are marked in real time. You can use the buttons to zoom in and out, show and hide track, highlight the current train, and centre the map on the current trainís position. The map is very useful for keeping an eye on whatís happening in a complex layout - you can soon see if trains are getting jammed up somewhere.
Better Pantograph Modelling
For several versions it has been possible to model a pantograph that follows the height of the wires. However before build 100, the model was stretched to give the impression of movement. The new code means that the structure moves to keep touching the wire.
Modelling in 3d Canvas
It is now possible to create models for Rail3D in 3d Canvas, and export them using Mark Hodsonís plug in. You can find more details in the tutorials section of the Rail3D wiki.
Rendering is one area where Rail3D does not compare well with commercial simulators, though with every build it is improving. Rail3D is written by Mark in his spare time not a team of professional Direct X experts. Improvements to the terrain, overhead electric wires and track code have lifted frame rates.
Want to know more?
- You can download the Rail3D program at www.Rail3D.net
- The Help Documentation can be found at Rail3D Help Docs
- More information on projects can be found on the Rail3D wiki
- You can take part in discussions about the Rail3D project, give ideas and feedback via the Rail3D eGroup.
Credits and Thanks
- Mark Goodspeed for the program update, and demo layouts
- Mark Hodson for the 3d Canvas plug-in and the following sections of this article: 'Background', 'Why 2kD', 'Layout Map' and 'modelling in 3d canvas'.
- The Signalman at Consall (CVR) who let us into the signal box for source materials
- UKTS for hosting this article.
|Alan Perryman, June 2006.|