Shape Creation with Gmax

This covers some aspects of shape creation with Gmax. The tutorial for Google Sketchup can be found here SU.html.

Shape creation is a very vast topic and may take months of practice to achieve results like the locos available. Only trying to cover basics here.


This is a freeware program available here Download the tutorials as well, it has a steep learning curve compared to Sketchup but animated shapes are possible with Gmax.

If you are able to create a shape following the tutorials, you need a plug-in by Microsoft to export the shape to MSTS. It is available here

Also available at the same site one loco Deltic for practicing in Gmax. That is a very complicated design, just to show what is possible in Gmax (and little faulty too).

Then there are online tutorials which literally spoon-feed the readers. Some of them are :

The easiest to understand and reproduce. The link is

The best site for all tutorials of MSTS also has some great tips.

There are a few more, Google can find them for you.

Creating a Shape

Actually, the tutorial by vmbollig covers this very well. Only trying to enumerate some 'rules' and some terms here.

Every shape in MSTS is made up of groups. They are linked to other group in a tree branches like fashion. The topmost has to be "Main" or "Freight" for locos/wagons. This linking is called "hierarchy". You can see the hierarchy of any model in Shape Viewer (SV), View > Hierarchy.

The importance of making groups and linking them is that each group can have its own texture. So the group named 'Body' can have external texture of a coach while a group named 'BodyInside' can have the internal texture. Multiple textures for one group are also possible.

Pivot point is the way how a shape will be seen in MSTS. A pivot point with z value 0 will lie flush with ground, -2 will be seen 2 m deeper in the ground +2, 2 m higher, etc. Also the pivot is the point in relation with which your animated parts like wheels work. The hierarchy links as said above will attach their pivots to the parent. So the pivot of the topmost group Main needs particular attention. Confusing? it will be apparent when you do a shape as per Mr Bollig.

Ace textures are accepted by Gmax, with or w/o alpha mode. DXT compressed ace files are not accepted. Any texture can have different modes applied to it. Default is 'TexDiff' which is an opaque mode. For transparency, you need to apply 'BlendATexDiff' or 'BlendATex' mode with 'Trans' selected in lower right window. 'BlendATexDiff' mode is dark at night while 'BlendATex' mode glows at night.

Lastly LODs which are quite difficult to understand/ implement. LOD or Level Of Details is the way an object is seen at the distance specified.

So you want full details when the object is near the camera and less details when it is far away. Every object is made of 'Poly's or polygons and the numbers of polys affects the load on graphics of MSTS. An object with high poly count will slow the game FPS and vice versa. Everyone likes detailing their models but you have to consider the effect on gameplay.

Any object can be seen in MSTS at the max distance of 2 kms. So a train traveling at 60 kmph will see the object 2 min before it crosses and till 2 min after it does. So the object is loaded in RAM for that much time. An object with only one LOD level of 20,000 will occupy that much memory for 4 mins for this speed. Whereas an object with two LOD levels of say 20,000 for 500 m and 1000 for 2km will occupy that much less memory- memory used by 20,000 polys for 1 min and a fourth of that for the rest of 3 mins. This becomes apparent when there are hundreds of objects appearing and disappearing constantly.

You can open any shape in SV and see the LODs applied to the model. Open the default "Acela.s" and then you will appreciate how it looks at different distances. Also try the distance slider and see that it hardly makes any difference on the beauty of the model at the distance specified by the polys. The main reason why the default stock performs well as compared to the new stock.

Mr Bollig has clearly explained the way to decrease the poly count in LODs in his tutorial.