Tuesday, August 28th, 2012 Posted by Jim Thacker

Bjorn Klaasen releases TrackMaker for Maya

We’ve covered some pretty specialised tools before on CG Channel, but TrackMaker is about as specialised as they get. Developer Bjorn Klaasen’s collection of Maya scripts is designed to create car race tracks for games.

That said, it can create pretty much any part of a race track or its surroundings that you can think of, including lane markings, edging, walls, barriers and the surrounding terrain and vegetation.

A tool for every job – providing it’s track-related
The shape of a track is controlled by drawing splines, then adjusting control parameters for track dimensions (including the profile curve) and textures.

There is a custom patch blend function for joining surrounding ground types, and an extension to Maya’s Boolean operations to join pit lanes and alternate tracks.

You can even bake the racing line into your tarmac texture, drawing a curve to represent the ideal racing line, then adjusting the width and falloff of the strip where the surface has darkened as cars drive over it.

Tracks can be completed with a particle-based mesh paint system for adding trees, which can then be baked into separate geometry. There are also tools for polygon reduction and creating levels of detail.

Something for (almost) everyone
There is even quite a lot of extra functionality we won’t go into here: you can see it in the video above, along with a live test drive of an exported track.

All in all, if you create tracks for games or mods (or even if you just want some low-detail background terrain for an animation), it’s a steal at just €5.50 (around $6.90), including hotfixes and support.

The documentation notes that created content can be exported into other 3D apps “without loss of data”.

There’s no order link on Klaasen’s blog, so you’ll have to mail him directly at bjornklaassen [at] gmail [dot] com. The scripts are tested with Maya 2009 and 2013, and should work with intervening versions.

Read more about TrackMaker on Bjorn Klaasen’s blog