Overview

Terrain Configuration File

A single terrain configuration file, called terrain.cfg (found in the root directory), is used to map texture information for vector data (linear data such as roads, rivers, streams, railway lines, and so on) to polygon types and flattening information, and to control the automatic placement of certain features such as telephone poles, light poles, fences and power lines. This file provides reasonable defaults for most data types specified in vector data.

This file can be edited to add new texture and autogen sections to support a new type or style of vector data.

See Also

Table of Contents

  • general
  • land classes
  • texture
  • Olson land class
  • Vector Autogen
  • Texture layout
  • Autogen id type variant

The terrain.cfg file contains the following sections.

[general]

The general section just contains two counts.

defaulttexturecount The number of [texture] entries in the file. Entries are numbered from 0, so a count of 264 means that texture numbers go from 0 to 263. ( DefaultTextureCount=264 )
autogencount This is the number of  main IDs in the [autogen] sections. Note that this is not the number of entries, as each main ID can have several types and variants. Autogen IDs are numbered from 0, so with a count of 14, this means the main IDs number from 0 to 13. ( AutogenCount=14 )

[landclasses]

The landclasses section contains a list of constants. These are used in the olsonlandclass property of the [texture.n] entries. It is not possible to add new entries to this list.

( OCEAN_SEA_LARGE_LAKE_0=0 )
( LARGE_CITY_URBAN_GRID_WET_1=1 )
( LOW_SPARSE_GRASSLAND=2 )
( CONIFEROUS_FOREST=3 )
( DECIDUOUS_CONIFER_FOREST=4 )
( DECIDUOUS_BROADLEAF_FOREST=5 )
( EVERGREEN_BROADLEAF_FORESTS=6 )
( TALL_GRASSES_AND_SHRUBS=7 )
( BARE_DESERT=8 )
( UPLAND_TUNDRA=9 )
( IRRIGATED_GRASSLAND=10 )
( SEMI_DESERT=11 )
( DRY_CROP_AND_TOWN=12 )
( WOODED_WET_SWAMP=13 )
( SHRUB_EVERGREEN=16 )
( SHRUB_DECIDUOUS=17 )
( EVERGREEN_FOREST_AND_FIELDS=19 )
( COOL_RAIN_FOREST=20 )
( CONIFER_BOREAL_FOREST=21 )
( COOL_CONIFER_FOREST=22 )
( COOL_MIXED_FOREST=23 )
( MIXED_FOREST=24 )
( COOL_BROADLEAF_FOREST=25 )
( SOUTHERN_DECIDUOUS_BROADLEAF_FOREST=26 )
( CONIFER_FOREST=27 )
( MONTANE_TROPICAL_FORESTS=28 )
( SEASONAL_TROPICAL_FOREST=29 )
( COOL_CROPS_AND_TOWNS=30 )
( CROPS_AND_TOWN=31 )
( DRY_TROPICAL_WOODS=32 )
( TROPICAL_RAINFOREST=33 )
( TROPICAL_DEGRADED_FOREST=34 )
( CORN_AND_BEANS_CROPLAND=35 )
( RICE_PADDY_AND_FIELD=36 )
( HOT_IRRIGATED_CROPLAND=37 )
( COOL_IRRIGATED_CROPLAND=38 )
( COOL_GRASSES_AND_SHRUBS=40 )
( HOT_AND_MILD_GRASSES_AND_SHRUBS=41 )
( COLD_GRASSLAND=42 )
( SAVANNA_WOODS=43 )
( MIRE_BOG_FEN=44 )
( MARSH_WETLAND=45 )
( MEDITERRANEAN_SCRUB=46 )
( DRY_WOODY_SCRUB=47 )
( DRY_EVERGREEN_WOODS=48 )
( SAND_DESERT=50 )
( SEMI_DESERT_SHRUBS=51 )
( SEMI_DESERT_SAGE=52 )
( BARREN_TUNDRA=53 )
( COOL_SOUTHERN_HEMISPHERE_MIXED_FORESTS=54 )
( COOL_FIELDS_AND_WOODS=55 )
( FOREST_AND_FIELD=56 )
( COOL_FOREST_AND_FIELD=57 )
( FIELDS_AND_WOODY_SAVANNA=58 )
( SUCCULENT_AND_THORN_SCRUB=59 )
( SMALL_LEAF_MIXED_WOODS=60 )
( DECIDUOUS_AND_MIXED_BOREAL_FOREST=61 )
( NARROW_CONIFERS=62 )
( WOODED_TUNDRA=63 )
( HEATH_SCRUB=64 )
( POLAR_AND_ALPINE_DESERT=69 )
( MANGROVE=72 )
( CROP_AND_WATER_MIXTURES=76 )
( SOUTHERN_HEMISPHERE_MIXED_FOREST=78 )
( MOIST_EUCALYPTUS=89 )
( RAIN_GREEN_TROPICAL_FOREST=90 )
( WOODY_SAVANNA=91 )
( BROADLEAF_CROPS=92 )
( GRASS_CROPS=93 )
( CROPS_GRASS_SHRUBS=94 )
( GRASS_SKIRTING_1=95 )
( GRASS_SKIRTING_2=96 )
( GRASS_AND_SHRUB_SKIRTING=97 )
( DRY_GRASS_AND_DIRT_SKIRTING=98 )
( SAND_AND_DESERT_SKIRTING=99 )
( OCEAN_SEA_LARGE_LAKE=100 )
( LARGE_CITY_URBAN_GRID_WET=101 )
( LARGE_CITY_URBAN_GRID_DRY=102 )
( LARGE_CITY_URBAN_NON_GRID_WET=103 )
( LARGE_CITY_URBAN_NON_GRID_DRY=104 )
( MEDIUM_CITY_URBAN_GRID_WET=105 )
( MEDIUM_CITY_URBAN_GRID_DRY=106 )
( MEDIUM_CITY_URBAN_NON_GRID_WET=107 )
( MEDIUM_CITY_URBAN_NON_GRID_DRY=108 )
( LARGE_CITY_SUBURBAN_GRID_WET=109 )
( LARGE_CITY_SUBURBAN_GRID_DRY=110 )
( LARGE_CITY_SUBURBAN_NON_GRID_WET=111 )
( LARGE_CITY_SUBURBAN_NON_GRID_DRY=112 )
( MEDIUM_CITY_SUBURBAN_GRID_WET=113 )
( MEDIUM_CITY_SUBURBAN_GRID_DRY=114 )
( MEDIUM_CITY_SUBURBAN_NON_GRID_WET=115 )
( MEDIUM_CITY_SUBURBAN_NON_GRID_DRY=116 )
( SMALL_CITY_SUBURBAN_GRID_WET=117 )
( SMALL_CITY_SUBURBAN_GRID_DRY=118 )
( SMALL_CITY_SUBURBAN_NON_GRID_WET=119 )
( SMALL_CITY_SUBURBAN_NON_GRID_DRY=120 )
( LARGE_CITY_HIGHRISE=121 )
( ICE=122 )
( INLAND_WATER=123 )
( OCEAN_INLET=124 )
( NON_PERENNIAL_INLAND_WATER=125 )
( NON_PERENNIAL_INLAND_SEA=126 )
( REEF=127 )
( GRASS=128 )
( ARID=129 )
( ROCK=130 )
( DIRT=131 )
( CORAL=132 )
( LAVA=133 )
( PARK=134 )
( GOLF_COURSE=135 )
( CEMENT=136 )
( TAN_SAND_BEACH=137 )
( BLACK_SAND_BEACH=138 )
( AIRFIELD1=139 )
( AIRFIELD2=140 )
( ROCK_VOLCANIC=141 )
( ROCK_ICE=142 )
( GLACIER_ICE=143 )
( EVERGREEN_TREE_CROP=144 )
( DECIDUOUS_TREE_CROP=145 )
( DESERT_ROCK=146 )
( SAVANNA_GRASS=147 )

[texture.n]

Each texture is defined by a heading in brackets and one or more optional attribute values. The heading in square brackets contains the unique integer texture identifier referenced by VTP vector data (refer to the Terrain and Scenery document). Texture files (see the textures property) must be listed in a certain order, and often include in their name initials to determine which season they apply to. The texture order is: wi, hw, sp, su, fa, lm, where:

  • wi = mild winter
  • hw = hard winter
  • sp = spring
  • su = summer
  • fa = fall/autumn
  • lm = light map (night)
name The name of the texture. This is for reference only, it is not used to identify the texture (the guid entry is used for that purpose). FSX shorelines - default shoreline( Name=Shorelines_Default )
Hydro Polygons - Generic Lake - Perennial( Name=Hydro_Polygons_Generic_Lake_Perennial )
FSX shorelines - generic river shoreline( Name=Shorelines_Generic_River )
FSX shorelines - generic ocean shoreline( Name=Shorelines_Generic_Ocean )
Airport Backgrounds (FSX) - MaskClassMap only( Name=Airport_Backgrounds_MaskClassMap_Only )
Airport Backgrounds (FSX) - Flatten only( Name=Airport_Backgrounds_Flatten_Only )
Airport Backgrounds (FSX) - Flatten + MaskClassMap( Name=Airport_Backgrounds_Flatten_MaskClassMap )
Hydro Polygons - Generic Ocean - Perennial( Name=Hydro_Polygons_Generic_Ocean_Perennial )
FSX shorelines - generic canal/channel shoreline( Name=Shorelines_Generic_Canal_Channel )
Hydro Polygons - Generic Canal/Channel - Perennial( Name=Hydro_Polygons_Generic_Canal_Channel_Perennial )
color Not supported.
guid This is the GUID used to identify the feature type, one from the list in:
Vector Shape Properties Guids
FSX shorelines - default shoreline( guid={6BE0F0F1-C807-4C6F-81CB-B5D565C69375} )
Hydro Polygons - Generic Lake - Perennial( guid={BCD5C182-9C8B-4C57-97BD-272CF492CBFF} )
FSX shorelines - generic river shoreline( guid={FDA34C77-39FD-4507-B128-F4F55FEC60DC} )
FSX shorelines - generic ocean shoreline( guid={68900A2A-6679-4580-88EA-8BFED4DAC361} )
Airport Backgrounds (FSX) - MaskClassMap only( guid={594E70C8-06A5-4E3F-BE6E-4DBF50B49D11} )
Airport Backgrounds (FSX) - Flatten only( guid={18580A63-FC8F-4A02-A622-8A1E073E627B} )
Airport Backgrounds (FSX) - Flatten + MaskClassMap( guid={46BFB3BD-CE68-418E-8112-FEBA17428ACE} )
Hydro Polygons - Generic Ocean - Perennial( guid={2D103429-89EB-4CB3-A61E-E188E79C77E7} )
FSX shorelines - generic canal/channel shoreline( guid={ACC45E7F-A47A-44D6-ADA6-59C9271BDB71} )
Hydro Polygons - Generic Canal/Channel - Perennial( guid={C4E055AB-0855-4D5C-8FB9-3318E1C8AB8A} )
textures Determines which texture to use when rendering the vector.

To render using a land class texture, use an integer land class value from the table of values in the Land Classification section of the Terrain and Scenery document.

To render with a custom texture, use the file name of the texture you want to use.

To render with a different texture for each season and at night, use a comma-separated list of texture file names in the following order: mild winter, hard winter, spring, summer, fall, night.
FSX shorelines - default shoreline( Textures=l_tanrock_ns.bmp,l_tanrock_ns_hw.bmp,l_tanrock_ns.bmp,l_tanrock_ns.bmp,l_tanrock_ns.bmp )

FSX shorelines - generic river shoreline( Textures=r_tanrock_ns.bmp,r_tanrock_ns_hw.bmp,r_tanrock_ns.bmp,r_tanrock_ns.bmp,r_tanrock_ns.bmp )

FSX shorelines - generic ocean shoreline( Textures=o_tansand_ls.bmp )

Stream Lines - stream lines / unknown / perennial( Textures=RiverSU.bmp )

Ocean Shorelines - Perennial - ocean / white sand / perennial( Textures=o_whitesand_ls.bmp )

Ocean Shorelines - Perennial - ocean / black sand / perennial( Textures=o_blacksand_ls.bmp,o_blacksand_ls_hw.bmp,o_blacksand_ls.bmp,o_blacksand_ls.bmp,o_blacksand_ls.bmp )

Ocean Shorelines - Perennial - ocean / urban / perennial( Textures=o_tanrock_ls.bmp,o_tanrock_ls_hw.bmp,o_tanrock_ls.bmp,o_tanrock_ls.bmp,o_tanrock_ls.bmp )

Ocean Shorelines - Perennial - ocean / ice / perennial( Textures=o_ice_ns.bmp )

Ocean Shorelines - Perennial - ocean / swamp / perennial( Textures=l_swamp_p.bmp )

Ocean Shorelines - Non Perennial - ocean / white sand / non-perennial( Textures=rbankNPwi.bmp,rbankNPhw.bmp,rbankNPsu.bmp,rbankNPsu.bmp,rbankNPsu.bmp )
layout
or
type (legacy)
Layout of the texture, if the feature type is linear.  If the feature type is not linear, the value entered is ignored.
The legacy values are 1,2 and 3.
See diagrams below.
FSX shorelines - default shoreline( Layout=3_PLUS_4 )
Hydro Polygons - Generic Lake - Perennial( Layout=3_PLUS_1 )
Roads - gravel / 1 lane / divided median( Layout=7_PLUS_4 )
stripwidthinmeters
or
size (legacy)
The width of the texture strips in meters. The texture strips are shown in the diagrams below.

The legacy size property gives, in integer meters, the size of each texel.  The default value is 4 meters per texel.
FSX shorelines - default shoreline( Size=4 )
landclassremaptype
or
maskclassmap (legacy)
Controls if and how vector features change the underlying land class.  This attribute is useful, for example, to change forest to scrub when power lines pass through the forest.  The valid values are::
none, cultural, airport or natural. The legacy values are 0,1,2 and 3.

Use cultural for man-made line features like roads or power line corridors. Use airport for airport skirting polygons. Use natural for natural line features like shorelines and streams.
FSX shorelines - default shoreline( LandClassRemapType=natural )
Airport Backgrounds (FSX) - MaskClassMap only( LandClassRemapType=airport )
Airport Backgrounds (FSX) - Flatten only( LandClassRemapType=none )
Roads - concrete / 1 lane / divided median( LandClassRemapType=cultural )
renderpriority If there are overlapping areas the lowest priority textures are rendered first, and the highest priority textures are rendered last, and are therefore most likely to appear. FSX shorelines - default shoreline( RenderPriority=11000 )
Hydro Polygons - Generic Lake - Perennial( RenderPriority=20000 )
Airport Backgrounds (FSX) - MaskClassMap only( RenderPriority=80000 )
Hydro Polygons - Generic River - Perennial( RenderPriority=21000 )
FSX shorelines - generic canal/channel shoreline( RenderPriority=10000 )
Stream Lines - stream lines / unknown / perennial( RenderPriority=50000 )
Stream Lines - stream lines / unknown / non-perennial( RenderPriority=51000 )
Roads - concrete / 1 lane / divided median( RenderPriority=40000 )
Parks - City Park( RenderPriority=70000 )
Misc vector types - railroad( RenderPriority=30000 )
olsonlandclass One of the [landclasses] list of constants. Hydro Polygons - Generic Lake - Perennial( OlsonLandClass=OCEAN_SEA_LARGE_LAKE )
Parks - City Park( OlsonLandClass=PARK )
Parks - Grass Park( OlsonLandClass=GRASS )
Parks - Golf Course( OlsonLandClass=GOLF_COURSE )
Parks - Cement Park( OlsonLandClass=CEMENT )
Parks - Tan Sand Beach Park( OlsonLandClass=TAN_SAND_BEACH )
Parks - Black Sand Beach Park( OlsonLandClass=BLACK_SAND_BEACH )
flattenmode Flattening to apply. One of: none, flat, offset or slope.

If none is entered, then no flattening is applied.

If flat is entered, the region underneath the vector object (such as a road or railway line) will be flattened.

If offset is entered, then  an entry should be made for flattenoffsetmeters, which raises or lowers the terrain for the vector object.

If slope is entered, then the program will look for  a slope attribute to the vector data, and apply that slope (for example, the gradient of a river) to the terrain.
Hydro Polygons - Generic Lake - Perennial( FlattenMode=slope )
Airport Backgrounds (FSX) - MaskClassMap only( FlattenMode=none )
Airport Backgrounds (FSX) - Flatten only( FlattenMode=flat )
Stream Lines - stream lines / unknown / perennial( FlattenMode=offset )
flattenoffsetmeters Specifies whether to raise or lower the terrain mesh beneath the vector. To lower a streambed below the surrounding terrain, specify a negative integer in meters.  The default value is zero, which prevents the vector from having any effect on the elevation of the terrain mesh. Stream Lines - stream lines / unknown / perennial( FlattenOffsetMeters=-1 )
flattenpriority If there are overlapping areas when rendering terrain, the highest priority flattening procedures are executed first, and once a pixel has been adjusted, it cannot be adjusted again by a lower priority flattening mode. 0 is top priority. Hydro Polygons - Generic Lake - Perennial( FlattenPriority=20000 )
Airport Backgrounds (FSX) - Flatten only( FlattenPriority=10000 )
Hydro Polygons - Generic River - Perennial( FlattenPriority=21000 )
Stream Lines - stream lines / unknown / perennial( FlattenPriority=50000 )
Stream Lines - stream lines / unknown / non-perennial( FlattenPriority=51000 )
Roads - concrete / 1 lane / divided median( FlattenPriority=40000 )
Legacy Airport Backgrounds (obsolete) - Unknown( FlattenPriority=11000 )
Misc vector types - railroad( FlattenPriority=30000 )
water Set to True if the texture is a water polygon (non-linear) feature. Hydro Polygons - Generic Lake - Perennial( Water=Yes )
effect An attached special effect. Any of the special effects (.fx files) in the effects directory can be entered here. FSX shorelines - generic ocean shoreline( Effect=wavecontroller )
Ocean Shorelines - Perennial - ocean / urban / perennial( Effect=lakewavecontroller )
legacyid This entry is used to support legacy vector data, and should not be used for new additions to this file. Stream Lines - stream lines / unknown / perennial( LegacyId=1024 )
Stream Lines - stream lines / unknown / non-perennial( LegacyId=1025 )
Ocean Shorelines - Perennial - ocean / white sand / perennial( LegacyId=1026 )
Ocean Shorelines - Perennial - ocean / tan sand / perennial( LegacyId=1027 )
Ocean Shorelines - Perennial - ocean / black sand / perennial( LegacyId=1028 )
Ocean Shorelines - Perennial - ocean / urban / perennial( LegacyId=1029 )
Ocean Shorelines - Perennial - ocean / harbor / perennial( LegacyId=1030 )
Ocean Shorelines - Perennial - ocean / ice / perennial( LegacyId=1031 )
Ocean Shorelines - Perennial - ocean / bank / perennial( LegacyId=1032 )
Ocean Shorelines - Perennial - ocean / swamp / perennial( LegacyId=1033 )
vectorautogen Use VectorAutogen to optionally select a class of Autogen to apply to the vector.  By default, no Autogen is applied to the vector.  To apply Autogen, set the value of VectorAutogen to one of the Autogen guid values defined by an [Autogen.id.type.variant] section of terrain.cfg, see the example below.

The legacy use of this property was to enter the id of the [autogen] entry.
Roads - concrete / 2 lanes / divided median( VectorAutogen={81F596DE-70CF-DC43-BFCC-6F64A456DB23} (Medium road with light poles and telephone poles) )
Roads - concrete / 4 lanes / divided median( VectorAutogen={24A157E8-59BA-7748-AB32-7A688036A873} (Large divided highway with road signs and generic signs and large billboards and median barrier and middle lights) )
Roads - concrete / 2 lanes / undivided median( VectorAutogen={B4011B59-8B6B-C446-B79D-A9DA97AC3C05} (Small road with telephone poles only) )
Roads - concrete / 6 lanes / undivided median( VectorAutogen={1D64764E-9F03-894D-AA40-847233974C2C} (Small highway with road signs and generic signs and light poles) )
Roads - concrete / 10 lanes / undivided median( VectorAutogen={079F0A35-198F-AC4B-B5BF-BD27A1462736} (Large highway with road signs and generic signs and large billboards) )
Misc vector types - utility( VectorAutogen={12F31285-6183-284D-AE9E-E0D27715E792} (utility lines) )
Misc vector types - railroad bridges( VectorAutogen={6DF183A5-1F4A-9C46-B708-A24D772FC75A} (Railroad Bridge 2 (aka gen_bridge05)) )
road bridges - concrete / 1 lane / divided median( VectorAutogen={A00A11AA-0376-3E47-84CB-9B5B5BD9001D} (Covered Dirt Road Bridge - gen_bridge06) )
road bridges - concrete / 2 lanes / divided median( VectorAutogen={3A7D8E2E-CEB9-1C4C-8F72-B6F3CABA72A5} (Dual Other Concrete Bridges - ConcreteBridge1) )
road bridges - concrete / 2 lanes / undivided median( VectorAutogen={4AF057F7-FB9F-3843-A83C-D9030DCEACFF} (Single 4 lane bridge - gen_bridge01) )
rendertotexture Controls whether to render the vector into the terrain texture.  The default is True, which enables rendering.  Set this to False with an appropriate value for landclassremaptype if you want the vector to affect the underlying land class without directly rendering into the terrain texture.  For example, power lines corridors use the footprint of utilitymask.bmp to change the underlying land class. Misc vector types - utility( RenderToTexture=No )
excludeautogen If set to True, prevents Autogen objects (trees, poles etc) from appearing on top of the texture.  The default value is True. No examples.
Vector Autogen

In addition to mapping terrain texture information to vector data, the config file provides a mapping for vector-based Autogen. This technology enables automatic placement of items along vector data, such as power lines or fences. Consider the goal of placing telephone poles along a 2 lane road. The following entries in the terrain.cfg file demonstrate this process:

// Roads - concrete / 2 lanes / divided median
[Texture.140]
Name=Roads_Concrete_2_Lanes_Divided_Median
Color=FFC00000
guid={45E8A320-C85B-4FE7-BDB6-29C331C48AA8}
LegacyId=1138
Textures=hiwaysu.bmp, hiwayhw.bmp, hiwaysu.bmp, hiwaysu.bmp, hiwaysu.bmp, hiwaylm.bmp
Layout=3_PLUS_4
Size=4
FlattenMode=flat
FlattenPriority=40000
LandClassRemapType=cultural
VectorAutogen={81F596DE-70CF-DC43-BFCC-6F64A456DB23} (Medium road with light poles and telephone poles)
RenderPriority=40000
// Medium road with light poles and telephone poles
[Autogen.3.0.0]
guid={81F596DE-70CF-DC43-BFCC-6F64A456DB23}
LegacyId=3
AutoObject={46F3D6CB-4270-4373-AEE9-89FB38462EA9} (ag_telephonepole)
ObjectSize=219
ExclusionWidth=3
ClipData=Yes
Offset=15
Density=95
MinAutogenDensity=20
PlaceOnWater=No
RandomHeading=No

Note in the mapping of the texture data the VectorAutogen GUID and the [Autogen] GUID are identical, both shown in italic above. As a consequence, all vector data mapping two lane roads to texture id 140 will also have telephone poles running alongside the road.

Texture Layout

The texture file layout can be one of the following three types, identified by the layout property.

VECTOR_TEXTURE_LAYOUT_3_PLUS_1 Four vertical strips
VECTOR_TEXTURE_LAYOUT_3_PLUS_4 Three vertical strips and one strip with four subdivisions: one half, one quarter, and two one eighth sections.
VECTOR_TEXTURE_LAYOUT_7_PLUS_4 Seven vertical strips and one strip with four subdivisions: one half, one quarter, and two one eighth sections.

[autogen.id.type.variant]

An autogen entry is used to add one type of object (telephone poles, fences, and so on) to vector data.
Each autogen entry has an id, type and variant number in its title.

id ID number of the object. This number is only used to help organize the entries within this configuration file. // Telephone Lines
[Autogen.13.0.0]
guid={2727330E-C355-B743-9174-E0097031523A}
LegacyId=13
AutoObject={AB068666-D8E8-486B-90D6-164C45557688} (ag_genericsign)
ObjectSize=1000
ExclusionWidth=3
ClipData=Yes
Offset=20
Density=95
MinAutogenDensity=20
PlaceOnWater=No
RandomHeading=No
type An extra identifier that allows multiple [autogen] entries to be associated with a single texture. In the example shown, both light poles and telephone poles are added to the road texture identified by the guid. // Medium road with light poles and telephone poles
[Autogen.3.0.0]
guid={81F596DE-70CF-DC43-BFCC-6F64A456DB23}
LegacyId=3
AutoObject={46F3D6CB-4270-4373-AEE9-89FB38462EA9} (ag_telephonepole)
ObjectSize=219
ExclusionWidth=3
ClipData=Yes
Offset=15
Density=95
MinAutogenDensity=20
PlaceOnWater=No
RandomHeading=No

// Medium road with light poles and telephone poles
[Autogen.3.1.0]
guid={81F596DE-70CF-DC43-BFCC-6F64A456DB23}
LegacyId=3
AutoObject={47C97CED-C4E6-4E4B-8E9F-B110989EEA62} (ag_lightpole)
ObjectSize=173
ExclusionWidth=3
ClipData=Yes
Offset=-15
Density=90
MinAutogenDensity=20
PlaceOnWater=No
RandomHeading=No
variant This can be used to add some randomness to entries. [autogen] entries with identical id and type numbers, can have several different variants. In this case one of the variants will be chosen at random. // Railroad Bridge 1 (aka gen_bridge02)
[Autogen.12.0.0]
guid={6DF183A5-1F4A-9C46-B708-A24D772FC75A}
LegacyId=12
AutoObject={18B41D45-749E-47F8-B6E5-133835D7CD57} (gen_bridge02_2)
AutoObjectEnd={9ED413C1-90DF-4635-84C9-FD3EDA671CFB} (gen_bridge02)
ObjectSize=50
ObjectEndSize=100
ExclusionWidth=30
ClipData=No
Offset=0
Density=100
MinAutogenDensity=20
PlaceOnWater=Yes
RandomHeading=No

// Railroad Bridge 2 (aka gen_bridge05)
[Autogen.12.0.1]
guid={6DF183A5-1F4A-9C46-B708-A24D772FC75A}
LegacyId=12
AutoObject={5C0F70DA-FE09-4C3E-A2E7-2737EC700422} (gen_bridge05_2)
AutoObjectEnd={193A2264-53EC-464E-B139-6B790D9F92AE} (gen_bridge05)
ObjectSize=25
ObjectEndSize=50
ExclusionWidth=30
ClipData=No
Offset=0
Density=100
MinAutogenDensity=20
PlaceOnWater=Yes
RandomHeading=No

The properties of each [autogen] entry are as follows:

guid GUID identifying this [autogen] entry. utility lines( guid={12F31285-6183-284D-AE9E-E0D27715E792} )
test bridge data( guid={697FA56E-86E0-7444-9F13-28B0A138CA6D} )
Small road with telephone poles only( guid={B4011B59-8B6B-C446-B79D-A9DA97AC3C05} )
Medium road with light poles and telephone poles( guid={81F596DE-70CF-DC43-BFCC-6F64A456DB23} )
Small highway with road signs and generic signs and light poles( guid={1D64764E-9F03-894D-AA40-847233974C2C} )
Large highway with road signs and generic signs and large billboards( guid={079F0A35-198F-AC4B-B5BF-BD27A1462736} )
Large divided highway with road signs and generic signs and large billboards and median barrier and middle lights( guid={24A157E8-59BA-7748-AB32-7A688036A873} )
Covered Dirt Road Bridge - gen_bridge06( guid={A00A11AA-0376-3E47-84CB-9B5B5BD9001D} )
Dual Other Concrete Bridges - ConcreteBridge1( guid={3A7D8E2E-CEB9-1C4C-8F72-B6F3CABA72A5} )
Dual 4 lane bridge - gen_bridge01( guid={B266DC59-5C89-6F43-B284-EF472614ADE9} )
legacyid This is used only to reference legacy vector data, and should not be used for new [autogen] entries. utility lines( LegacyId=0 )
test bridge data( LegacyId=1 )
Small road with telephone poles only( LegacyId=2 )
Medium road with light poles and telephone poles( LegacyId=3 )
Small highway with road signs and generic signs and light poles( LegacyId=4 )
Large highway with road signs and generic signs and large billboards( LegacyId=5 )
Large divided highway with road signs and generic signs and large billboards and median barrier and middle lights( LegacyId=6 )
Covered Dirt Road Bridge - gen_bridge06( LegacyId=7 )
Dual Other Concrete Bridges - ConcreteBridge1( LegacyId=8 )
Dual 4 lane bridge - gen_bridge01( LegacyId=9 )
autoobject GUID of the primary object to place along the vector. utility lines( AutoObject={54382EC5-B1BD-4A43-AA1A-4F5F529356C3} (gen_powertower01) )
test bridge data( AutoObject={D9AAAE37-38B7-4694-AAD2-19ED06531A10} (concretebridge1b) )
Small road with telephone poles only( AutoObject={46F3D6CB-4270-4373-AEE9-89FB38462EA9} (ag_telephonepole) )
Medium road with light poles and telephone poles( AutoObject={47C97CED-C4E6-4E4B-8E9F-B110989EEA62} (ag_lightpole) )
Small highway with road signs and generic signs and light poles( AutoObject={AB068666-D8E8-486B-90D6-164C45557688} (ag_genericsign) )
Large highway with road signs and generic signs and large billboards( AutoObject={84744A27-000A-447B-AF09-DFACA7D0F2B2} (ag_roadsign) )
Large divided highway with road signs and generic signs and large billboards and median barrier and middle lights( AutoObject={F64A1A40-27FF-42AE-B547-50E20D481F33} (ag_largebillboard) )
Covered Dirt Road Bridge - gen_bridge06( AutoObject={C9775C1F-1E3E-4856-A416-34ADEFC096B6} (gen_bridge06_2) )
Small Concrete Bridge - gen_bridge03( AutoObject={DD021EE7-A57B-441F-A035-6EDB24CDE104} (gen_bridge03_2) )
Dual Highway Bridge - gen_bridge07( AutoObject={18B2918F-11D1-497C-B5C0-A2F26263E565} (gen_bridge07_2) )
objectsize Spacing between objects along the vector (in integer meters).
utility lines( ObjectSize=600 )
test bridge data( ObjectSize=30 )
Small road with telephone poles only( ObjectSize=200 )
Medium road with light poles and telephone poles( ObjectSize=219 )
Small highway with road signs and generic signs and light poles( ObjectSize=208 )
Large highway with road signs and generic signs and large billboards( ObjectSize=511 )
Large divided highway with road signs and generic signs and large billboards and median barrier and middle lights( ObjectSize=623 )
Covered Dirt Road Bridge - gen_bridge06( ObjectSize=10 )
Small Concrete Bridge - gen_bridge03( ObjectSize=12 )
Dual Highway Bridge - gen_bridge07( ObjectSize=40 )
exclusionwidth Optional width (in integer meters) of the Autogen exclusion zone on either side of the vector.
Default is 0.
utility lines( ExclusionWidth=20 )
test bridge data( ExclusionWidth=30 )
Small road with telephone poles only( ExclusionWidth=3 )
clipdata Boolean flag that determines whether the object should be clipped between cells.  Must be False for anything with end objects (bridges). Default is False. utility lines( ClipData=Yes )
test bridge data( ClipData=No )
offset Lateral offset (in integer meters) of the objects from the centerline of the vector.  Can be used to place objects beside a road like billboards.
Default is 0.
utility lines( Offset=0 )
Small road with telephone poles only( Offset=15 )
Medium road with light poles and telephone poles( Offset=-15 )
Large highway with road signs and generic signs and large billboards( Offset=20 )
Large divided highway with road signs and generic signs and large billboards and median barrier and middle lights( Offset=-20 )
density This is the percentage of objects to place.  Unless set to 100, this number is further modified by the Autogen density slider.  For example, if Density=50 and the Autogen slider is set to 50%, then only 25% of the objects will be placed in the world and 75% will be ignored.  However, if Density=100 then all of the objects will be place in the world regardless of the position of the Autogen slider. utility lines( Density=100 )
Small road with telephone poles only( Density=95 )
Medium road with light poles and telephone poles( Density=90 )
Small highway with road signs and generic signs and light poles( Density=80 )
minautogendensity This setting determines the minimum position of the Autogen density slider (as a percentage) for this object to appear.  If the slider is below this value, then no objects of this type will be placed in the world.
Default is 100.
utility lines( MinAutogenDensity=20 )
placeonwater Boolean flag that determines whether this type of object can be placed on water. Default is False. utility lines( PlaceOnWater=No )
test bridge data( PlaceOnWater=Yes )
randomheading Set to True to randomly rotate the heading of each model instance. Default is False. The random rotation is from zero to 360 degrees. utility lines( RandomHeading=No )
autoobjectend Optional GUID of an endpoint object to use at the ends of each vector. Typically used for bridges. test bridge data( AutoObjectEnd={3216F40B-0F54-434D-9B2C-73A0FEED7F08} (concretebridge1a) )
Covered Dirt Road Bridge - gen_bridge06( AutoObjectEnd={B2B05BE7-7DAF-4B92-8F92-50F19F14CC50} (gen_bridge06) )
Small Concrete Bridge - gen_bridge03( AutoObjectEnd={B0013E7C-FEA9-4A90-B576-A9B051DD5B41} (gen_bridge03) )
Dual Highway Bridge - gen_bridge07( AutoObjectEnd={2D7D189A-F0E5-43F3-B73F-D075F84E7A6B} (gen_bridge07) )
Dual new 4 lane bridge - gen_bridge08( AutoObjectEnd={DA002E64-342C-4742-B70D-96DC569C0B60} (gen_bridge08) )
Dual 4 lane bridge - gen_bridge01( AutoObjectEnd={BBF02CA5-90FC-4DA8-8892-42D0AC74B80D} (gen_bridge01) )
Railroad Bridge 1 (aka gen_bridge02)( AutoObjectEnd={9ED413C1-90DF-4635-84C9-FD3EDA671CFB} (gen_bridge02) )
Railroad Bridge 2 (aka gen_bridge05)( AutoObjectEnd={193A2264-53EC-464E-B139-6B790D9F92AE} (gen_bridge05) )
objectendsize Spacing between an endpoint object and the other objects along the vector (in integer meters). test bridge data( ObjectEndSize=30 )
Covered Dirt Road Bridge - gen_bridge06( ObjectEndSize=17 )
Small Concrete Bridge - gen_bridge03( ObjectEndSize=38 )
Dual Highway Bridge - gen_bridge07( ObjectEndSize=120 )
Dual new 4 lane bridge - gen_bridge08( ObjectEndSize=60 )
Dual 4 lane bridge - gen_bridge01( ObjectEndSize=220 )
Railroad Bridge 1 (aka gen_bridge02)( ObjectEndSize=100 )
Railroad Bridge 2 (aka gen_bridge05)( ObjectEndSize=50 )
scale Scale factor to apply to the model. Default is 1.0. No examples.
scalerange Randomly modulate scale factor up to +/- ScaleRange. Default is 0.0. No examples.
placementrange Randomly jitter the model placement up to +/- this many meters. Default is 0.0. No examples.