General Teaser Info

I wanted to make a kind of a general post about the teaser video we presented when announcing Subtransit. The train in this video is running on a pre-determined sequence of events – but otherwise everything is physically simulated. The only thing that was fully animated in the video was the camera movement (which I keyed in manually with the curves editor).

The teaser video takes place on a section of the Moscow Circle line, track 1. This section is one of many that make up the entire big level (each section is streamed in as player moves around the level).

Here’s the layout that was used for the teaser purposes, this is only one of the two parallel tracks. The total length of this section is about 1600 m (it is actually made up of several streaming chunks), there are actually two stations here the chunks for which have not been included.

The train that was used in this cinematic is slightly modified from the gameplay version (a way to specify and trigger various events from the level sequencer was added), triggered by the animation events. The specific sequence of events was a slow pull-up to a speed of about 10 km/h, crossing the signal light, then acceleration in the X2 drive mode (parallel circuit, no field reduction).

Just because it looks interesting, here is an animation from the train bogey just as the train departs (and releases pneumatic brakes):

Currently this is just the first pass of textures, many more details are going to be added. An interesting effect is clearly visible: the train departs before the brakes fully retract away from the wheel surface! This is an inherent problem (or a feature?) of many metro train types here – although one of the cities (Kyiv) has attempted to solve this issue by releasing the brakes when doors close rather than when train starts moving (specifically, the brakes release for about 2 seconds after doors have closed, permitting driver to start moving while they are still released).

I don’t know whether that would contribute much to the brake pad wear, but it’s an interesting subtle difference between how different cities handle the same type of trains.

There is a small jitter/slip that can be seen on the wheel – this is a small glitch that I will fix soon, it only affects rendering. From the physics point of view the wheel is stationary with static friction being applied, though the wheel rotation is not properly locked in PhysX, leading to minor divergence (the wheel is stationary in our custom physics engine).

A view of the train departure, from the train cabin point of view:

Some people have noticed a certain error on the screenshot present at the greenlight page, though there’s a kind of a boring explanation for it. On the video above and on the screenshot the ARS train safety system is off – and despite this the ARS block is showing speed limit as 80 km/h! That’s actually kind of my mistake – the ARS system can be switched out between a few different types. One of those types is a placeholder ARS used entirely for debugging the train – this system is always on, it lights up 80 km/h speed limit, removes inhibition on all control circuits. This permits driving without any actual safety systems for debugging purposes. I simply forgot to swap out the ARS on the train used in the teaser.

Also someone noted that the electric contact boxes looked weird on the trains. That was actually me again, I have decided to not close the contact boxes because I’ve spent some time getting them right – and now you can see the connectors and everything on the screenshot! Of course, in the operational use these boxes are usually closed up to prevent dust and grime from covering the sensitive electric contacts.

A few additional switches are also disabled (since the train is configured to spawn ready for a hot-start). The mirrors are also disabled for this scene for performance reasons.

Originally I planned to make a post on how the teaser was made, although as you can see there really isn’t anything special to it. It is simply the working in-game train put onto an in-game section of the metro track with just a sequenced set of inputs that make it go!