My last job was for a french university as ressearch and simulator engineer. I worked on several projects about railway. The two bigger ones were a complete electrical railway network using train models and a 3D train simulator that I will talk about now.
This 3D simulator was made in about 5 months and will be used for training some beginner in train driving, also try new features in train or do some experimentations lead by ressearcher of the university.
This simualtor allows the user to:
edit a rail network (positionning of rail and the environment arround by adding buildings or trees)
drive on the rail network (possibility to change the vehicule model to try new things)
create signalisation with a logic system allowing to have different states changing following conditions ( distance of the train coming, state of other signalisation, time,..)
online functionnalities ( several users driving on the same network, a supervizer watching a train moving and can switch the way to take, edit a network together,..)
tutorial functionnality ( stop the vehicule and display a text, one video shows tutorial for a signalisation explaining every state of it and what to do, it can be used at every moment for teaching better)
multiple devices can be used: keyboard, joystick, throttle, pedals,..