<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
<!--
 /* Style Definitions */

p,div
	{mso-style-name:Text;
	margin-top:0pt;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
li
	{mso-style-name:Text;
	margin-top:2pt;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
p.Link, div.link
	{mso-style-name:Link;
	margin-top:0pt;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:#3366FF;}
li.Link
	{mso-style-name:Link;
	margin-top:0pt;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:#3366FF;}
h1
	{mso-style-next:Normal;
	margin-top:12.0pt;
	margin-right:0pt;
	margin-bottom:12.0pt;
	margin-left:0pt;
	text-align:left;
	line-height:150%;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:2;
	font-size:20.0pt;
	font-family:Arial;
	color:black;
	mso-bidi-font-style:italic;}
h2
	{mso-style-next:Normal;
	margin-top:12.0pt;
	margin-right:0pt;
	margin-bottom:12.0pt;
	margin-left:0pt;
	text-align:left;
	line-height:150%;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:2;
	font-size:18.0pt;
	font-family:Arial;
	color:#000033;
	mso-bidi-font-style:italic;}
h3
	{mso-style-next:Normal;
	margin-top:12.0pt;
	margin-right:0pt;
	margin-bottom:9.0pt;
	margin-left:0pt;
	text-align:left;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:3;
	font-size:16.0pt;
	mso-bidi-font-size:13.0pt;
	font-family:Arial;
	color:#0000cc;}
h4
	{mso-style-next:Normal;
	margin-top:12.0pt;
	margin-right:0pt;
	margin-bottom:5.0pt;
	margin-left:0pt;
	text-align:left;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:3;
	font-size:13.0pt;
	mso-bidi-font-size:13.0pt;
	font-family:Arial;
	color:#00aa00;}
h5
	{mso-style-next:Normal;
	margin-top:3.0pt;
	margin-right:0pt;
	margin-bottom:3.0pt;
	margin-left:0pt;
	text-align:left;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:3;
	font-size:12.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:Arial;
	color:#000000;}
h6
	{mso-style-next:Normal;
	margin-top:3.0pt;
	margin-right:0pt;
	margin-bottom:3.0pt;
	margin-left:0pt;
	text-align:left;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:3;
	font-size:12.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:Arial;
	color:#aa0000;}
CODE
	{mso-style-name:Code;
	margin:0pt;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:12.0pt;
	font-family:"Courier New";
	mso-fareast-font-family:"Courier New";
	color:#000000;}
A:Hover
	{color:#00aa00;}
BODY
	{margin-left:30pt;
	background:#f5f5f5;}
@page Section1
	{size:612.0pt 792.0pt;
	margin:72.0pt 90.0pt 72.0pt 90.0pt;
	mso-header-margin:36.0pt;
	mso-footer-margin:36.0pt;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}

table
	{class:T1;
	style:border:medium none;
	border-collapse:collapse;
	border:5;
	background-color:#FFFF99;
	border-color:#CC0000;
	border-style:inset;
	width:670;
	text-align:left;}

tr	{vertical-align:top;}

-->
</style>
</head>
<body>
<h1><img src="Images/fsx-bannerscenery.jpg" width="800" height="200" /></h1>
<h1>Autogen</h1>
<h2>Overview </h2>
<p>Autogen is the <i>Flight Simulator</i> process that generates the default scenery objects. The simulated world is divided into a grid, each square roughly 1.2 by 1.2 kilometers, and each grid square will have a texture applied to it based on its land classification (see the <a href="../Terrain SDK/Terrain and Scenery.html">Terrain and Scenery</a> documentation for details). The textures for land classification can have an associated annotation file, which contains footprints of buildings and vegetation. If a specific building model is required, then a library object can be placed on the texture. However, for the majority of buildings this would result in a very repetitive landscape. For this reason, only the footprint, range of heights, and building textures are contained in the annotation file. The autogen process will select or construct an appropriate building model at run time, therefore creating much more varied and realistic landscapes.</p>
<p>&nbsp;</p>
<p>This document explains how to annotate textures with buildings and vegetation, and modify or replace default scenery textures.</p>
<h2>Table of Contents</h2>
<ul>
  <li><a href="#AnnotatingTextures">Annotating Textures</a></li>
  <li><a href="#Setup">Setup</a></li>
  <li><a href="#TheControlStrip">The Control Strip </a></li>
  <li><a href="#CreatingBuildingFootprints">Creating Building Footprints</a></li>
  <li><a href="#SettingBuildingProperties">Setting Building Properties </a></li>
  <li><a href="#CreatingVegetationAreas">Creating Vegetation Areas </a></li>
  <li><a href="#AutogenTextureSheets">Autogen Texture Sheets</a></li>
  <li><a href="#LayoutofBuildingTextureSheets">Layout of Buidling Texture Sheets</a></li>
  <li><a href="#LayoutofRowHouseTextureSheets">Layout of Row Houses Texture Sheets</a></li>
  <li><a href="#LibraryObjectTextureSheets">Library Object Texture Sheets </a></li>
  <li><a href="#AutogenConfigurationEditor">Autogen Configuration Editor</a></li>
  <li><a href="#VegetationGroupings">Vegetation Groupings </a></li>
  <li><a href="#Editingthedefaultxmlfile">Editing the Default.xml file </a></li>
  <li><a href="#AutogenValidationTools">Autogen Validation Tools</a></li>
  <li><a href="#CreatinganSPBfile">Creating an SPB file </a></li>
</ul>
<h2>Annotating Textures <a name="AnnotatingTextures" id="AnnotatingTextures"></a></h2>
<p>Textures are annotated using the annotator.exe tool.</p>
<ul>
  <li><a href="#Setup">Setup</a></li>
  <li><a href="#TheControlStrip">The Control Strip </a></li>
  <li><a href="#CreatingBuildingFootprints">Creating Building Footprints</a></li>
  <li><a href="#SettingBuildingProperties">Setting Building Properties </a></li>
  <li><a href="#CreatingVegetationAreas">Creating Vegetation Areas </a></li>
</ul>
<h3>Setup<a name="Setup" id="Setup"></a></h3>
<ol>
  <li>Annotation files for <i>Flight Simulator X</i> have a different format to those of earlier versions. The <i>Flight Simulator X</i> version of the Annotator tool can read <i>Flight Simulator 2004</i> autogen annotation files, but will only write them out to the new format. <i>Flight Simulator X</i> will accept annotated files in both formats. So if you intend that your annotated files run in earlier versions of <i>Flight Simulator</i>, then use the Annotator.exe tool provided with the <i>Flight Simulator 2004</i> SDK. If you intend than your annotated files run only on <i>Flight Simulator X</i>, then use the version of the Annotator.exe tool provided with this SDK. </li>
  <li>To use the  tool,  make sure the file default.xml is in the same folder as Annotator.exe. The default.xml file is in the <i>FSX\Autogen</i> folder. </li>
</ol>
<h3>The Control Strip<a name="TheControlStrip" id="TheControlStrip"></a></h3>
<p>  The Control strip is a floating window that may be positioned anywhere on the desktop. You can use the Control strip to select the annotation editing mode. The mode selection determines the action of your mouse. Using these modes, you can create building footprints, vegetation areas and row houses, pan textures, and select and manipulate objects. </p>
<p>&nbsp;</p>
<h5>  Building (B), Row Houses (R), Polyline Building (J, Library (L)</h5>
<p>  Choose one of these modes to create building footprints, specific to the region, on the ground texture. See <a href="#CreatingBuildingFootprints">Creating  Building Footprints</a>. </p>
<p>&nbsp;</p>
<h5>Autogen Roof (O)</h5>
<p>Choose this model to select the style of roof for the area. <br />
</p>
<h5>Vegetation (V), Polygon Region (I)</h5>
<p>  Choose this mode to create rectangular or polygon areas of vegetation. See <a href="#CreatingVegetationAreas">Creating Vegetation Areas</a>.</p>
<h5><br />
Pan (N)</h5>
<p> Choose this mode to pan the texture within the workspace. Click and drag anywhere in the workspace to move the visible portion of the image. Alternatively, you can pan the texture in any mode by using the middle mouse button (or mouse wheel button) to click and drag.</p>
<h5><br />
Zoom (Z)</h5>
<p> Choose this mode to zoom in and out on the texture. To magnify a section of a texture, click the left mouse button anywhere in the workspace. To zoom out, click the right mouse button. You can also zoom in or out in any mode by rolling the mouse wheel up and down.</p>
<h5><br />
  Select (S)</h5>
<p>  Choose this mode to select building and object footprints and vegetation areas. To select any footprint or vegetation area, click it. To select multiple objects, hold down the CTRL key and then click each object that you want to select, or click and drag a selection area. You can then move, cut, copy, paste, or delete the selected objects.</p>
<h5><br />
  Paste (A)</h5>
<p> Choose this mode for a very quick method of pasting selected building footprints, vegetation areas, and library objects onto the texture. Select one of more objects as described above for Select mode, then click <b>Paste (A)</b>. Now on the texture, click the left mouse button to paste the selection as many times as desired. </p>
<h3>Creating  Building Footprints<a name="CreatingBuildingFootprints"></a></h3>
<ol>
  <li>    On the Control strip, click <b>Building (B</b>), <b>Row Houses (R)</b>, <b>PolyLine Building (J)</b>, or <b>Library (L)</b>. If a library object is selected, make sure to select the appropriate class of library object before placing the footprint. The classes of library object are in the large list box on the Control strip, and include Industrial Complexes, Religious Buildings, Urban Buildings and so on. See <a href="#Editingthedefaultxmlfile">Editing the default.xml file</a> for details on how to add library objects. </li>
  <li> Move the cursor to the place on the image where you want to place a building, and draw a footprint as follows:<br />
    <br />  
    <img src="Images/Building Footprint.JPG" width="579" height="386" /> <br />
    <br />
    Library objects are of a fixed size. To draw a polyline building (such as a building with a courtyard, or with an open area in the center) just click on the outline of the building, then right click to select one of the options to close the polygon, then move the mouse and click again to finalize the shape and size of the building. Note that polyline buildings must be completely enclosed (so for example, it is possible to create a Pentagon type building, but not a U shaped building using this feature). <br />
    Individual building footprints are shown in red,  row house footprints are in purple, polyline buildings are in violet, and library objects are in light blue.<br />
    <br />
  </li>
  <li>Repeat step 2 until you have drawn a footprint for each building or row house that you want autogen to draw. There is no limit to the number of footprints. To reduce the workload involved with placing many building footprints of similar size, you can use the copy, paste, and delete functions available. You can copy and paste an individual building or a group of buildings. 
    To copy and paste building footprints.	Click <b>Select</b> on the Control strip, and then click on the building that you want to duplicate.   Buildings turn yellow when selected. To select multiple buildings, hold down the CTRL key while clicking on the buildings. Then, on the Edit menu, click <b>Copy</b> to copy the selection to the clipboard, and then  click <b>Paste</b> to paste the selection. 	Select and drag the new buildings to the desired location. 
    To delete a building footprint select the building footprint that you want to delete, and press the DELETE key.<br />
  </li>
  <li>Check for intersecting buildings. 
    Autogen prevents automatically generated objects from overlapping custom-placed objects, but it cannot prevent building footprints from intersecting with one another. Therefore, you must make sure that building footprints do not intersect. 
    To check for intersecting footprints  click <b>Highlight Intersects</b> on the Control strip. 
  Intersecting buildings are highlighted in orange, as shown in the diagrams below (where a row house and a building intersect):<br /> 
  <br />
  <table class="T1" cellspacing="2" cellpadding="4">
    <tr>
      <td><img src="Images/Intersect 1.JPG" width="276" height="299" /></td>
      <td><img src="Images/Intersect 2.JPG" width="276" height="299" /></td>
    </tr>
  </table>
  <br />
  </li>
  <li>	Move or delete any intersecting buildings.</li>
  <li>Set the properties for the buildings, see <a href="SettingBuildingProperties">Setting Building Properties</a>. <br />
  </li>
  <li> On the File menu, click <b>Save</b>. An annotation file (with the extension .agn) will be saved to the same directory that the original image is in. If there is no existing annotation, a new file will be created. Any existing annotation file of the same name will be overwritten. It is a good idea to save often as you annotate each file, as creating all the building footprints can be a slow and painstaking process.</li>
  <li> When you have finished, your image might look something like the following image, where every colored block represents a building or piece of vegetation that will be rendered in <i>Flight Simulator</i>.<br />
    <br />
      <img src="Images/Annotate 1.JPG" width="551" height="597" /><br />
  </li>
</ol>
<h4>Setting Building Properties<a name="SettingBuildingProperties" id="SettingBuildingProperties"></a></h4>
<p>To set properties that  control the runtime generation of  buildings,  use the options  in the Annotation Properties dialog box (in the <strong>File</strong> menu of the Annotation tool, click <strong> Properties</strong>). </p>
<h3><img src="Images/Annotation Properties dialog.JPG" width="379" height="554" /></h3>
<h5>Height Profile </h5>
<p>Use  the height profile sliders to set the building height profile for the current  texture. The height of each building is generated at runtime, but these sliders  control the height profile. The further to the right each slider is, the more buildings of that type are generated.</p>
<p>&nbsp;</p>
<p> For example, in a typical suburban  ground texture, most of the buildings have 1 or 2 floors, a few buildings have  3 to 8 floors, and no buildings have 9 or more floors. 
  To create this building height  profile: </p>
<ul>
  <li>Move the <strong>1-2 floors</strong> slider to the far  right to increase the proportion of buildings with 1 or 2 floors.</li>
  <li>Move the <strong>3-5 floors</strong> and <strong>6-8 floors</strong> sliders toward the left to decrease the proportion of buildings with 3 to 8  floors.</li>
  <li>Move the <strong>9-12 floors</strong> slider to the far  left to prevent the generation of buildings with 9 or more floors.</li>
</ul>
<p>Similarly, in a more urban or  industrial ground texture, move the sliders that control the taller buildings  to the right, and move the sliders that control the shorter buildings to the  left. 
  Fundamentally, the slider values  represent the relative probability that a particular height will be selected  for each individual building footprint. However, to prevent the creation of  oddly sized buildings, there are two exceptions: if a building footprint is  either small (less than 625 square meters) or very large (greater than 1600  square meters), the height will be forced to one or two stories at runtime.</p>
<h5>Building Texture </h5>
<p>Use the <strong>Building Texture</strong> list  to select the bitmap that will be used to texture the buildings. You can  modify the default texture or create new autogen building textures. For more  information, see <a href="AutogenTextureSheets">Autogen Texture Sheets</a>.</p>
<h5>RowHouse Texture </h5>
<p>Use the <strong>RowHouse Texture</strong> list  to select the bitmap that will be used to texture any row houses. You can  modify the default texture or create new autogen row house textures. For more  information, see <a href="AutogenTextureSheets">Autogen Texture Sheets</a><strong><em>.</em></strong></p>
<h5>Restore Last Settings </h5>
<p>If you want to reset the slider values  for the texture to their original settings, click this button. </p>
<h3>Creating Vegetation Areas<a name="CreatingVegetationAreas" id="CreatingVegetationAreas"></a></h3>
<p>Creating vegetation areas is very similar to <a href="#CreatingBuildingFootprints">creating building footprints</a>. The annotation tool can either create the legacy rectangular vegetation areas, or use the polygon region feature to create an arbitary polygon to fill with vegetation. Set the appropriate GUID for a class or region of vegetation using the right-click menu. See <a href="#VegetationGroupings">Vegetation Groupings</a>. </p>
<h2>Autogen Texture Sheets <a name="AutogenTextureSheets" id="AutogenTextureSheets"></a></h2>
<p>Autogen uses a number of texture sheets to define the appearance of buildings and vegetation. These texture sheets take advantage of as much texture space as possible to deliver the maximum amount of visual difference in how autogen objects appear, while remaining a minimal burden on texture memory resources. 
Autogen uses four classes of textures: building,  row houses, library and vegetation. You can edit these textures to customize the appearance of the default scenery. These four texture classes have different layouts, which are described in the following sections.</p>
<ul>
  <li><a href="#LayoutofBuildingTextureSheets">Layout of Buidling Texture Sheets</a></li>
  <li><a href="#LayoutofRowHouseTextureSheets">Layout of Row Houses Texture Sheets</a></li>
  <li><a href="#LibraryObjectTextureSheets">Library Object Texture Sheets </a></li>
</ul>
<h3>Layout of Building Texture Sheets<a name="LayoutofBuildingTextureSheets" id="LayoutofBuildingTextureSheets"></a></h3>
<p>  In the <i>FSX/texture</i> folder there are a number of texture sheets for autogen buildings that represent day and night variations of buildings in differentl regions of the world. Each texture map  is constructed to follow a consistent layout, regardless of the time of day or location. The following diagrams illustrates the basic layout of a building texture, and the layout in pixels. </p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/Building Layout.JPG" width="352" height="457" align="middle" /></td>
  </tr>
  <tr>
    <td><img src="Images/Building Layout in Pixels.JPG" width="695" height="609" /></td>
  </tr>
</table>
<p>&nbsp;</p>
<p>  Textures  are mapped to buildings that meet certain constraints. For example, only buildings that fit a certain profile (building footprint, building height) will be textured with one of the four warehouse texture variations (color-coded yellow above). Autogen building texture sheets are 512 x 512 pixels in total size. However, individual texture areas that describe the sides of a building are formed by smaller subunits called cells. Cells are 16 x 16 pixels in size. On a building side texture, one cell is equal to approximately one story of building height and an equal measurement in the building&rsquo;s width. Roof textures are composed of single cells.  Depending on the vertical height, length, or width of a particular building, autogen clips to the nearest cell. </p>
<p><br />
  For example, in the diagram below, autogen uses the entire 6 cells of available width on one side, 4 out of 6 cells on another side, and 8 out of 12 cells of height. In the building in the background, 9 out of 12 cells of height are used.</p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/Texture cells.JPG" width="308" height="304" /></td>
  </tr>
  <tr>
    <td><img src="Images/Texture cell example.JPG" width="548" height="369" /></td>
  </tr>
</table>
<p>&nbsp;</p>
<p>One significant difference between Autogen for <i>Flight Simulator 2004</i> and <i>Flight Simulator X </i>is the handling of roof textures. The layout of the textures has not changed, but the process for handling house roofs has. The office buildings and warehouses still use the system described above. However, for house roof textures there is now a RoofDescriptions.xml file that includes regional information and variations on house roofs. House roof texture files that are referenced from the RoofDescriptions.xml file can have a varied format (the texture co-ordinates are in the xml file).</p>
<h3>  Layout of Row House Texture Sheets <a name="LayoutofRowHouseTextureSheets" id="LayoutofRowHouseTextureSheets"></a></h3>
<p>  In the <i>FSX/texture</i> folder there are a  number of texture sheets for Row House  buildings. The following diagram illustrates the basic layout of the textures. </p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/RowHouses Layout.JPG" width="786" height="473" /></td>
  </tr>
  <tr>
    <td><img src="Images/RowHouse Layout in pixels.JPG" width="873" height="805" /></td>
  </tr>
</table>
<p>&nbsp;</p>
<p>Textures are mapped to buildings that meet certain height constraints. Unlike the default autogen buildings  that use a tiling texture that wraps around all sides of a building, all Row House buildings use two textures. The first texture (designated as &ldquo;front&rdquo; in the figure above) is used to texture the longest sides of the building, and the second texture (designated as &ldquo;side&rdquo;) is used to texture the shortest sides. 
  An additional difference between Row House textures and default  buildings lies in how the roofs are textured in each. Default  buildings select from a variety of roof textures based on building type and size. Row House buildings select one roof texture from a pool of equal sized textures regardless of building size. 
  Row House building texture sheets  are 512 x 512 pixels in total size. </p>
<p>&nbsp;</p>
<p>The next illustration  demonstrates how Row House textures are tiled across the face of a given side or top of a building. On the Row House texture sheet, there is a 3 x 4 cell area of unique texture available for the front of a building that fits this height profile, and a 3 x 4 cell area for the side. 
  In the nearest building below, autogen uses an entire 3 x 4 cell area of available width and height for the front of the building, and tiles that group of cells 3.5 times across the length of the building. The side of the building also uses a different 3 x 4 cell area, but only for one instance. The roof of this building uses one roof cell tiled 4 times.  Depending on the length or width of a particular building, autogen clips to the nearest cell. 
In the building in the background, a 3 x 4 cell area is tiled twice across the long face, once across the side, and twice along the top. Because Row Houses have roofs that are pitched across either the long front or the short side, there is a small amount of texture clipping in the cell area adjoining the roof (see the second illustration below). </p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/RowHouses Example.JPG" width="640" height="552" /></td>
  </tr>
  <tr>
    <td><img src="Images/Texture Clipping.JPG" width="753" height="450" /></td>
  </tr>
</table>
<p><br />
</p>
<h3>Library Object Texture Sheets<a name="LibraryObjectTextureSheets" id="LibraryObjectTextureSheets"></a></h3>
<p>  To create a richer visual environment, autogen can display more complex 3D shapes selected from a library of generic types. Because these objects are more complex, each 3D object has dedicated texture coordinates unique to that object. Some objects may share texture space with other objects (for example, two different motel models may use the same texture of a swimming pool, but the location, shape, and size of the pool can differ in each motel), but even then the texture coordinates are different from object to object. It is possible to edit the textures themselves, but not to change the texture coordinates used by the models in question. The illustration below shows some example texture sheets used for autogen&rsquo;s library objects, and the second illustration shows an in-game example of more complex shaped objects.</p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/Library Object textures.JPG" width="817" height="400" /></td>
  </tr>
  <tr>
    <td><img src="Images/Library Object example.JPG" width="599" height="533" /></td>
  </tr>
</table>
<p><br />
</p>
<h2>Autogen Configuration Editor<a name="AutogenConfigurationEditor" id="AutogenConfigurationEditor"></a></h2>
<p>The Autogen Configuration Edtior tool can be used to edit many of the files that define the autogen procedure. In the <i>FSX/Autogen</i> folder there are the following files:</p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><h5>File</h5></td>
    <td><h5>Description</h5></td>
    <td><h5>Editable with AutogenConfigEditor </h5></td>
  </tr>
  <tr>
    <td>AutogenDescriptions.xml</td>
    <td>Describes the vegetation groupings and regionalizations. Vegetation models (trees, shrubs etc.) are referenced from within the file. </td>
    <td><p>Yes. Add, remove or modify vegetation groupings and weights, and add or remove individual vegetation model references. See <a href="#VegetationGroupings">Vegetation Groupings</a>. </p>
    <p>&nbsp;</p>
    <p>Note the MaxScale and MinScale paramaters are not implemented in this version of <i>Flight Simulator X</i>. </p></td>
  </tr>
  <tr>
    <td>default.xml</td>
    <td>Defines the library objects associated with each region and class of automatically generated scenery. </td>
    <td>No. Edit using a text editor. See the section <a href="#Editingthedefaultxmlfile">Editing the Default.xml</a> file. </td>
  </tr>
  <tr>
    <td>Extrusions.xml</td>
    <td>Extrusions are vertical objects than are not of a fixed size so cannot be defined by individual models, such as fences and extrusion bridges.</td>
    <td>No. To add extrusions as scenery, use the <a href="../BGL Compiler SDK/The BGL Compiler.html">BGL Compiler</a>. </td>
  </tr>
  <tr>
    <td>Materials.xml</td>
    <td>This file contains references to materials used by the other xml files. </td>
    <td>Yes. Add or modify matierials. </td>
  </tr>
  <tr>
    <td>RoofDescriptions.xml</td>
    <td>Describes the default roofs to use for the various buildings. </td>
    <td>Yes. Similar to vegetation. Add, remove or modify  groupings and weights, and add or remove individual model references. </td>
  </tr>
  <tr>
    <td>TerrainAutogenClassDescriptions.xml</td>
    <td>Describes the default land classifictions. </td>
    <td>No. It is not recommended that this file is changed. </td>
  </tr>
</table>
<p>&nbsp;</p>
<h3>Vegetation Groupings <a name="VegetationGroupings" id="VegetationGroupings"></a></h3>
<p>With the AutogenDescriptions.xml file open in the Autogen Configuration Editor, ensure the Vegetation Groupings and Model Entires windows are open. In the example below the grouping b Sycamore ALL refers to three other groupings (Mature, Old and Young). The relative weights are totalled (they need not total to any specific number) and the number of times a sub-grouping is chosen is calculated by dividing the relative weight by the total weight. For example, Sycamore Mature will be chosen for 75% of the vegetation areas referencing this grouping, Sycamore Old 15% of the areas, and Sycamore Young 10% of the areas. The Sycamore Mature grouping contains references to four models, each with an equal weight, so each model will be chosen for 25% of the vegetation areas.</p>
<p>&nbsp;</p>
<p>A grouping can contain references to both other groupings and individual models. In all cases the relative weights determine how often a model, or group of models, is to be used.  </p>
<p>&nbsp;</p>
<table width="800" border="1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/Vegetation Groupings.JPG" width="343" height="539" /></td>
    <td><img src="Images/Vegetation Models.JPG" width="183" height="538" /></td>
  </tr>
</table>
<p>&nbsp; </p>
<h3>Editing the Default.xml File<a name="Editingthedefaultxmlfile" id="Editingthedefaultxmlfile"></a></h3>
<p>The default.xml file  defines the library objects associated with each region and class of automatically generated scenery. In order to change which objects appear for various library types, you must edit this file. If you have copied this file to the same directory as the annotator.exe tool, remember the location that <i>Flight Simulator</i> reads the file from is <i>FSX\Autogen</i>.</p>
<p>&nbsp;</p>
<p>The following table shows a section of the default.xml file. <br />
</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><img src="Images/DefaultXML image.JPG" width="493" height="408" /></td>
  </tr>
</table>
<p>&nbsp;</p>
<p>The following table describes the xml tags used in the file. </p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><h5>Tags</h5></td>
    <td><h5>Description</h5></td>
  </tr>
  <tr>
    <td>&lt;AUTOGEN&gt;</td>
    <td>Wrapper tag for entire file. </td>
  </tr>
  <tr>
    <td>&lt;REGION&gt; &lt;CODE&gt;</td>
    <td>This corresponds to the region code used by the simulation. For a list of the region codes and the areas they represent, see the Regions section of the <a href="../Terrain SDK/Terrain and Scenery.html">Terrain and Scenery</a> document. </td>
  </tr>
  <tr>
    <td>&lt;CLASS&gt; &lt;NAME&gt; &lt;GUID&gt; &lt;WIDTH&gt; &lt;DEPTH&gt; </td>
    <td>The name is the class name that will appear in the annotator.exe tool. The GUID is used to uniquely identify the class, create a new GUID if you intend to create a new class. Library objects are of a fixed size, and WIDTH and DEPTH specifiy that size, in meters. </td>
  </tr>
  <tr>
    <td>&lt;LIBRARYOBJECT&gt; &lt;NAME&gt; &lt;GUID&gt; </td>
    <td>The name of the library object, and its unique GUID. </td>
  </tr>
</table>
<p>&nbsp;</p>
<p>It is possible to add new library objects, and new classes, to this file. It does not make sense to add new regions. </p>
<p>&nbsp;</p>
<h2>Autogen Validation Tools<a name="AutogenValidationTools" id="AutogenValidationTools"></a></h2>
<p>There are a number of tools that can be used to validate various autogen files. These tools are all command-line driven, and each has its own config file ( a file with the same name as the tool, but with .config appended to it) describing its default behavior. There are four levels of text output: verbose, information, warnings and errors. The output level is set in the config file. The tools are described in the following table.</p>
<p>&nbsp;</p>
<table class="T1" cellspacing="2" cellpadding="4">
  <tr>
    <td><h5>Tool</h5></td>
    <td><h5>Description</h5></td>
  </tr>
  <tr>
    <td>AC2Scan</td>
    <td>Validates the default.xml file (found in the <i>FSX/Autogen</i> folder), checking for consistency with the regions and classes within the file, and that the GUIDs reference models that exist. </td>
  </tr>
  <tr>
    <td>AC3Scan</td>
    <td>Validates the AutogenDescriptions, Extrusions, Materials, RoofDescriptions and TerrainAutogenClassDescriptions files (either XML or SPB versions), primarily checking for the existence of models and textures. </td>
  </tr>
  <tr>
    <td>AGNScan</td>
    <td>Validates .AGN (autogen annotation files) primarily checking that the GUIDs referred to exist in the appropriate configuration files. </td>
  </tr>
  <tr>
    <td>ContentScan</td>
    <td>This tool combines the three autogen validation tools, along with the BGLScan and MDLScan tools. This tool does not take any inputs, all the settings it uses are in the ContentScan.exe.config file. </td>
  </tr>
</table>
<p>&nbsp; </p>
<h4>Creating an SPB file<a name="CreatinganSPBfile" id="CreatinganSPBfile"></a></h4>
<p>The  AutogenDescriptions, Extrusions, Materials, RoofDescriptions and TerrainAutogenClassDescriptions files can either be in XML or SPB (Sim-Prop Binary) format. The binary format is faster to load that its XML equivalent. To  create an SPB file, run the simpropcompiler.exe tool, which is in the <i>SDK\Core Utiliites Kit\SimProp</i> folder. This is a command-line tool, so open a command window, navigate to the <i>SDK\Core Utiliites Kit\SimProp</i> folder, then enter the following command:</p>
<p>&nbsp;</p>
<code><b>&gt; Simpropcompiler 2spb   &ndash;symbols c:\fsx\propdefs\*.xml <i>yourAutogenFile</i>.xml <i>yourAutogenFile</i>.spb</b></code>
<p>&nbsp;</p>
<p>Note that file extensions are required for both the input and output filenames. To simply validate the xml file without creating any output file, change the keyword <b>2spb</b> to <b>validate</b>. </p>
<p>&nbsp;</p>
<p>&nbsp; </p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p align="center">&copy; 2006 Microsoft Corporation. All rights reserved. </p>
<p align="center">~~@~~ </p>
<p align="center">&nbsp;</p>
</body>
</html>
