OpenBVE is a railway train-driving simulator with an emphasis on in- cab driving, realistic physics, braking system, and train safety system modelling. Technically, the simulator handles detailed per-car simulation of the brake systems, friction, air resistance, toppling and more. In trains supplied with 3D cabs, the driving experience is augmented with forces that shake the driver's simulated body upon acceleration and braking, as well as through curves. Compared to other rail-based simulators, OpenBVE has its main focus on realism -- not necessarily on user-friendliness. There may be a need to study operational manuals for the routes and trains chosen, rather than merely memorising a few keystrokes. The simulator is designed to be backwards-compatible with existing "BVE Trainsim" routes and cab interiors, allowing a wide range of existing scenarios to be loaded by a single-program (BVE1, BVE2, BVE4, and extended OpenBVE route formats). OpenBVE uses OpenGL for 3D graphics rendering, OpenAL for positional surround sound, and is written in the C# language. Note that binary train extension plugins are not currently supported on Unix, because these would require Win32 emulation.