RF Track Building Guide by Mike DiPonio

From Simwiki.net
Jump to navigation Jump to search

Overview

rF Track Building Guide (Cleaned and Formatted)

Edited version of JPS's Track Editing introduction (with permission). Originally made for SCGT and F1C, updated for rFactor track editing.

Required Software

  • 3D Studio MAX: Mandatory (ZModeler not sufficient)
  • Set units to meters: Customize > Unit Setup

Section 1: Lofting a Basic Layout

1. Setup

  • Obtain accurate track map and scale it
  • Create a plane and assign track map material
  • UV map it using fit and bitmap fit
  • Lower it by 10m to keep out of the way

2. Create Path Line

  • Use a standard spline line, set vertex type to smooth
  • Trace down the center of the pavement
  • Use minimal number of vertices (every 20m in turns, 80m on straights)
  • Use Bezier or Bezier-corner for refining; avoid corner type
  • Place starting point at world center (0,0,0) if possible
  • Add elevation changes by adjusting Z-values of vertices

3. Important Notes

  • Keep this path line free-floating, never attach to hierarchy
  • Do not delete it

4. Lofting the Track

  • Create a straight shape line (2 corner vertices)
  • Width = 8 to 16 meters

Lofting Procedure

  • Create tab > Geometry > Compound Objects > Loft
  • Select your path
  • Set Path Parameters to Path Steps
  • Under Creation Method, select Instance > Click Get Shape > Click your shape line

Fix Loft Orientation

  • If it's vertical: Modify shape line > Segment mode > Rotate Z-axis by 90°

5. Applying Materials (gMotor2)

  • Create Multi/Sub-Object material
    • Rename first sub-material to ROADxxx
    • Change type to gMotor Material
    • Use shader: T1 (DX7) or Bump Specular Map T1 (DX8)

Texture Slots

  • Color: Main road texture (e.g. ROAD.DDS)
  • Specular: e.g. ROAD_S.DDS
  • Bump: e.g. ROAD_B.DDS

Tiling

  • Specular: U/V = 6
  • Bump: U/V = 12 (if road is 12m wide)

6. Texture Mapping

  • Apply material to loft object
  • Set Length Repeat appropriately (start at 40)
  • Width Repeat = 1 (usually)
  • To vary by segment: disable normalize and set Material ID per segment

7. Optimizing Mesh

  • Shape Steps: Controls width polycount (0 = 1 quad across)
  • Path Steps: Controls length polycount
    • Adjust to improve curve/hill smoothness without overloading polycount

Real-time Adjustments

  • Modify path vertices or Bezier handles to affect mesh
  • Add vertices using Refine

Section 2: Setting Up Game Files

Folder Structure

  • Create: GameData\Locations\YourTrack
    • Inside: GMT\, MAP\, and subfolders for layouts (TrackShort, TrackLong)
  • Copy from original track: aiw, cam, gdb, scn, mas files
  • Rename all files to match your track

GDB File

  • Top entry = TRACK NAME IN CAPS
  • Filter Properties = mod/series
  • Event name = Track name
  • Setup TDF, SCORETOWER, lighting

SCN File

  • Use sample track SCN as base (SampleTrack recommended)
  • Delete Instances section
  • Adjust directories and MAS references

Converting to GMT

  • Setup MAX Utilities: Configure Buttons > GMT Converter
  • Set mesh directory, e.g. rFactor\GameData\Locations\YourTrack\GMT
  • Click Get Selected with loft selected
  • Check:
    • Collidable
    • HAT
    • Use gMotor Normals
    • Smooth
    • Receiver
    • Omni
  • Click Do Mesh

Creating SCN Instance

  • Set scene file path (e.g. NEW.SCN)
  • Export scene > copy instance lines to your track's SCN file

Creating AIW File (Minimal Test Version)

<syntaxhighlight lang="ini"> [GRID] GridIndex=0 Pos=(-3.865,0.250,-2.316) ; X,Y,Z Ori=(0.000,-1.569,-0.001) </syntaxhighlight>

  • Swap Y and Z from MAX coordinates
  • Add 0.2 to Y to prevent falling through track

SCN Instance Format

<syntaxhighlight lang="ini"> Instance=track01 {

 MeshFile=track01.mts
 CollTarget=True
 HATTarget=True
 ShadowReceiver=True
 Response=VEHICLE,TERRAIN

} </syntaxhighlight>

First Test

  1. Set Opponents = 0
  2. Disable flags
  3. Load track in Race mode
  4. Test drive and check:
    1. Elevation
    2. Poly overlaps
    3. Material ID collision
    4. Driveable surface
  • If falling through: delete track's .HAT file in LOG/HAT/
  • Also: In PLR file set:

<syntaxhighlight lang="ini"> Always Rebuild HAT = 0 </syntaxhighlight>

Loft Tuning

  • Fine-tune elevation, width, vertex smoothness
  • Use Tape Measure in MAX for width validation
  • Avoid scaling path/shape lines (causes measurement/mapping errors)
  • Adjust shape/path size based on real track length:
    • Example: Lap at 30mph = 8 minutes
      • (8 / 2 = 4 miles in game)
      • If real length is 3 mi, then scale factor = 3/4 = 0.75