MXB Track Creation Guide

From PiBoSo Documentation
Revision as of 00:08, 27 January 2015 by PiBoSo (talk | contribs) (→‎track.hmf)
Jump to navigation Jump to search

Download the example track files

Basic Workflow



Heightmap

Heightmap must be 16bpp 2049x2049 IBM RAW.
1025x1025 & 4097x4097 are also supported.

Track Data files

track.hmf

samples_x = 2049 (RAW image width)
samples_y = 2049 (RAW image height)
data = heightmap.raw (RAW image filename)

size_x = 480 (track size in meters)
size_z = 480 (track size in meters)
scale = 3.2 (total track height in meters)

num_layers = 2 (number of texture layers)

layer0
(
map = track.tga (for example, the base terrain texture name)
repetitions = 1 (texture tiling)
}

layer1
{
map = grass.tga (second texure layer name)
repetitions = 50 (if you are using a shader for this texture, this value should match the one in the .shd file)
mask = grass_mask.tga (the alpha channel will be a mask that shows / hides this layer)
thickness = 0.1 the layer thickness, in meters
grass (enables 3d grass for this layer)
 {
 max_density = 8
 height = 0.15
 height_diff = 0.1 (randomise the grass height by this much)
 width = 0.2
 width_diff = 0.1 (randomise the grass width by this much)
 texture = grassfx.tga (this map is split into 4 horizontal sections - so 1024x256 is split into 4 separate 256x256 textures)
 densitymap = mask.tga (alpha channel controls the grass density)
 }
}

track.tht

samples_x = 2049 (must be the same as value in .hmf file)
samples_z = 2049 (must be the same as value in .hmf file)

data = heightmap.raw (must be the same as value in .hmf file)

size_x = 480 (must be the same as value in .hmf file)
size_z = 480 (must be the same as value in .hmf file)
scale = 3.2 (must be the same as value in .hmf file)

scene0 (here you add the scenery model)
{
name = scenery.edf (name of the scenery model file)
pos (use these values to change the position and rotation of the scenery)
	{
	x = 0
	y = 0
	z = 0
	}
rot
	{
	x = 0
	y = 0
	z = 0
	}
}

Terrain Textures & Shaders

Textures must be in TGA or BMP truecolor format. Size must be power of 2 (256, 512, 1024, 2048, 4096). Textures can be rectangle ( for example: 256x512, 1024x64 )

SHD files

These allow you to use specular & normal maps. Must be named the same as the texture it will be applied to (for example, mud.tga & mud.shd)

bump
{
map = mud_n.tga (normal map filename, specular level must be in alpha channel)
repetitions = 46
}

specular
{
shininess = 12 (sharpness of the specular highlight)
}

Masks

If you want to use a tiled ground texture, you can use a mask to specify on which parts of the terrain it should appear.
The mask MUST BE IN THE ALPHA CHANNEL of the dedicated mask tga. All colour channels are ignored.
Then you can assign it to the correct texture layer in the HMF file:

layer1
{
	map = mud.tga
	repetitions = 50
	mask = mud_mask.tga
}

The base layer (layer0) should not have a mask.

TerrainEd

TerrainEd is a command-line program. It is needed to generate a .map (graphics) file and a .trh (collisions) file. Shadows are generated automatically during the .map export. Arguments:

TerrainEd inputfile outputfile [params]

params.ini

Here you can change light / shadows settings.

[params]
lightdir_x = 2 (position of the sun east)
lightdir_y = 10 (position of the sun up [can be left at 10 usually])
lightdir_z = -7 (position of th sun north)
shadowvolumes_create = 1 (enable shadow volumes generation, turn off for faster exports for testing) 
shadowvolumes_supersampling = 4 (quality of the shadow volumes, can usually be left at 4)
shadowmaps_create = 1 (enable shadows generation, turn off for faster exports for testing) 
shadowmaps_scale = 0.2 (can usually be left at 0.2)
shadowmaps_supersampling = 4 (quality of the shadow volumes, reduce for faster exports)
  • Run map.bat to generate a track.map file
  • Run trh.bat to generate a track.trh file

Rename these files to your chosen track name.

TrackEd

  • Open your .trh file in tracked.
  • You will need to create a centerline, merge it, and then save the trh.
  • You must place the pits, starting gates, finish line, and pitboards.
  • You can also place marshals and replay cameras.
  • For instructions on using TrackEd, go here: TrackEd

Extra Files

  • If desired, you can adjust the sun position & colour, fog amount & colour, and ambient light colour, for all conditions. Open the .amb file in notepad, and use Map Viewer to see the changes. Please note that you should use the same settings for the sun direction in the amb file and the params.ini file.
  • You should edit the .ini file to change the track name, author, location etc.
  • Update the track.tga screenshot and the track_map.tga.
  • Use the skies provided, or create new skydomes.

Packing

All final track files should go in a folder of the same name.
For example, mytrack/

You should have the following files in the folder:

mytrack.map (track graphics)
mytrack.trh (track collision)
mytrack.rdf (race data - pits, startgates, finishline etc.)
mytrack.ini (track information)
mytrack.tsc (trackside cameras)
mytrack.amb (lighting and environment settings)
mytrack_map.tga (map of the track for the UI)
mytrack.tga (screenshot of the track for the UI)
clearsky.edf (sunny skydome)
cloudysky.edf (cloudy skydome)
rainysky.edf (rainy skydome)
To test your track in MXB, copy this folder to the tracks folder in the MX Bikes installation directory.
For distribution, you can zip up the folder and rename the zip file to .pkz. The folder must be zipped, not just the files.