Track Creation Cheat Sheet
RealRoad
Instance
- Name: RaceSurface prefix
- Deformable, HATTarget and CollTarget
Material
- Name: TDF prefix (e.g. road, asph, rdcp, ...)
- Name: _WET suffix
- Reflection Mapper: REFLECTEDENV
Vertex Color
- Unavailable (used by RealRoad technology)
Shadows
Set Shadow Out Distance for optimization
Types
- Object: only renders the casted shadow
- Caster: preferred type for solid objects
- Textured Caster: fences, vegetation (slower!)
Shadow Groups: additive A (1|Max) to D (8|Low)
SunBlocker Object, prevents glitches when sun is below horizon
Vegetation and Crowds
Bump Spec Map T1 Stamp Vertex / Stamp Normal (Treelines)
Material
- Chroma; check Blend Pixels with XPAA OFF
Vertex Color
- Alpha: 99.9999
- Exporting Vertex Alpha requires Vertex Color to be set to a value – even (255,255,255)
Set up Screen-Aligned Quads in Exporter
Check triangulation on test export before distribution
Object Scale 100% – Reset Transform
Terrain (Multi Layer grass/dirt)
Instance
- HATTarget and CollTarget (drivable areas)
Material
- Name: TDF prefix (e.g. gras, grvl, ...)
Vertex Color
- Black: Zero state (T1)
- Green: Mix in T2
- Red: Mix in T3
- Blue: Blend T4.A
- Alpha: Greyscale shading
Reflection Maps
RefMap0 – car reflections
- include terrain, barriers, buildings, and vegetation
ReflectedEnv – wet surface reflections
- aim to include barriers, key buildings and structures
Static## – non-movable CubeMap reflections
- automatically contains everything within LOD distance of specified coordinates
Include at least one instance in RefMap0 and ReflectedEnv
Animations
Always animate at world zero (0,0,0)
Root Bone at (0,0,0) with 0.01 weight for all vertices
Always export .anm at (0,0,0) and time index 0
Exports bones only, do not include the mesh
Select skinned mesh as Root Bone
Group skinned mesh and bones for distribution
Export ungrouped distributed meshes with Fix Bone Names
VisGroups
Most common
- A: Removed from High detail and lower (1)
- B: Removed from Medium detail and lower (2)
- C: Removed from Low detail (4)
- F: Removed from RearView mirror (32)
- G: Removed from Practice (64)
- H: Removed from Qualifying (128)
- I: Removed from Race (256)
Numbers are added up in the SCN Instance
Example: VisGroups C (4) and F (32) = 36
Marshals
Instance Names
- CornerWorker_### (unbroken sequence)
- DigiFlag_### (match CornerWorker ###)
- StarterWorker_### (unbroken sequence)
- PitOfficial_### (unbroken sequence)
Distribute as group including bones
Export ungrouped distributed meshes with Fix Bone Names
Night Lighting
Omni
- Name: Nightlight##
- Lights Omni-tagged objects
- Object receives light from 20 closest omni lights
Glow object
- Name: NightLight##Glow
Start Lights
Instance
- Name: StartLight
GDB
- NumStartingLights = number of lights + 1
Material
- Name: rdlta, b, c, d, e for five lights
- Animation Data
- Name: rdlt.dds
- Frames: 2
- Sequence example for two lights (brackets!)
- rdlta: (0,1,1,0)
- rdltb: (0,0,1,0)
NoRain Zones
Object in 3D space where rain particles are not rendered
- Box Primitive with placeholder material: 1 SubMat
Instance
- Name: NoRainZone_##
- No Render
- Export with gMotor Normals
Albedo Map
Diffuse reflectivity of material surface
Absolutely vital for correct HDR output
Basic simplified rule of thumb
- Albedo Map = Diffuse Map @ neutral, overcast sky
Extensive information
- AlbedoMap on Wiki
Pit Lights
Instance
- Name: PitLightOut and/or PitLightIn
Material
- Name: rdpitla, grpitla, ylopitla
- Animation Data
- Name: rdlt.dds, grlt.dds, ylolt.dds
- Frames: 2
- Sequence – don’t forget (brackets)
- rdpitla: (0,0,1)
- grpitla: (1,1,0)
- ylopitla: (0,1,0)
SunBlocker
Object
- Low poly hemisphere facing down
- Connect to edges of terrain/skybox
Instance
- Shadow Object
- Shadow Groups A+B+C+D = (15)
gMotor Viewer Keyboard Shortcuts
U: Toggle shadows
G: Toggle ground tracking
S: Cycle performance information
C: Cycle anisotropic levels
O: Toggle outlines
W: Toggle wireframe front face / all
Ctrl + T: Toggle Transparency Anti-Aliasing (XPAA)
Ctrl + +: Increase Vertical FOV
Ctrl + -: Decrease Virtual FOV
Alt + W: Hide/Show Tweak Bar interface
Alt + R: Toggle Reflection Maps
- Use T and Shift + T to cycle
Timing Lines
Instance
- Names
- XSector1, XSector2, XFinish
- XPitOut, XPitIn
- No Render
- CollTarget
- Response
- Sectors: VEHICLE,TIMING
- Pit: VEHICLE,PITSTOP
Oriented in such a way that cars ‘collide’ with the polygon
Typical Object Workflow (3ds Max)
Export
- Detach Smoothing Groups to Elements (MaxScript on Wiki)
- Export with gMotor Normals
- Tweak Albedo, Normal and Specular Maps and ...
- ... check/tweak material values in gJED/Viewer
Optimization
- Atlas textures that share similar material values
- Batch objects that use share submaterials
- Set LOD Out and Shadow Out Distances
- Set VisGroups and Shadow Groups