<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.250.27.168</id>
	<title>Spring - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://springrts-wiki.p2004a.com/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=82.250.27.168"/>
	<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/wiki/Special:Contributions/82.250.27.168"/>
	<updated>2026-11-09T00:31:45Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Gamedev:Archives&amp;diff=8120</id>
		<title>Gamedev:Archives</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=Gamedev:Archives&amp;diff=8120"/>
		<updated>2005-09-01T12:37:40Z</updated>

		<summary type="html">&lt;p&gt;82.250.27.168: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The first step in understanding how Spring is put together is to understand&lt;br /&gt;
where the filetypes came from and how the files are organized, and what all the different files do. In Spring, there are several formats you can use, including relic supported TA formats and standards such as zlib and 7zip.&lt;br /&gt;
&lt;br /&gt;
In Total Annihilation, all files were compressed with a format known as HAPI. Files of this format included .HPI, .UFO, .CCX, and .GP3. For all practical purposes, you can think of the HPI file like their own home-grown ZIP file, containing its own directory structure and groups of files. All HAPI files are compressed in the same way, the only difference is the extension used.&lt;br /&gt;
&lt;br /&gt;
Spring also supports reading from zlib zip and non-solid 7zip files. The filenames for these compression types must be .SDZ for zlib and .SD7 for 7zip respectively. They are standard files, just with different extensions for Spring. Here&#039;s a list of all filetypes supported by Spring; a higher read order means the contents of a file of that extension will take priority over files of a lower read order.&lt;br /&gt;
&lt;br /&gt;
An interesting twist is that map archivse can be placed into the /maps/ folder and contains another /maps/ folder inside the archive.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;75%&amp;quot; border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;5%&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;Read Order&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;10%&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;File Extension&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;10%&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;Compression Method&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;75%&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;Description&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;1&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;SD7&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;Non-Solid 7zip&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;A 7zip file with the extension changed to .SD7. These files have the same structure as an HAPI file, they are just compressed in a different manner. 7zip compressed archives generally have the highest compression (and therefore lowest filesizes). Files of this type are read first, so any filetypes encountered after .SD7 with the same data will take priority. For example, if you have ARMCOM.FBI in an SD7 file, and a modified version of ARMCOM.FBI in a CCX file, the CCX version will be used.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;2&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;SDZ&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;ZLIB ZIP&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;A zlib ZIP file with the extension changed to .SDZ. These files have the same structure as an HAPI file, they are just compressed in a different manner. Maps and mods alike can be stored in these files. These are read second.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;3&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;HPI&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;HAPI&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;One of the HAPI file format extensions. These are read third.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;4&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;UFO&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;HAPI&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;Another HAPI file extension. Fourth in line of being read.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;5&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;CCX&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;HAPI&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;Yet another HAPI file. These are fifth in the chain of being read.&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;6&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;GP3&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;HAPI&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;The sixth in the chain of files being read.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;7&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;SWX&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;HAPI&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;The seventh in the chain of command of files. This extension was originally used by the Star Wars Total Annihilation mod, but Spring doesn&#039;t care whether or not it&#039;s actually used for SWTA. It is an HAPI file.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;5%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;8&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;b&amp;gt;GP4&amp;lt;/b&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;10%&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;HAPI&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;75%&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;The eighth filetype read. Any data in a .GP4 file will override any other compressed data in any other files. This is also an HAPI file.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The best tools to use to view the contents of a compressed Spring file, and&lt;br /&gt;
to pack and unpack the contents of such a file are:&lt;br /&gt;
&lt;br /&gt;
*[http://fileuniverse.com/?page=showitem&amp;amp;ID=72 HPIView] to view, browse, and extract HAPI files.&lt;br /&gt;
*[http://fileuniverse.com/?page=showitem&amp;amp;ID=67 HPIPack] to pack HAPI files.&lt;br /&gt;
*[http://www.rarlabs.com WinRAR] to view, browse, extract, and pack SDZ files, or to browse SD7 files.&lt;br /&gt;
*[http://www.7-zip.org/ 7zip] to view, browse, extract, and pack SD7 files.&lt;br /&gt;
&lt;br /&gt;
There are many other utilities that can also serve the same purpose. Peruse [http://www.fileuniverse.com FileUniverse] if for some reason the tools listed here don&#039;t suit you.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;75%&amp;quot; border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;174&amp;quot; colspan=&amp;quot;2&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;Subdirectory&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;140&amp;quot; valign=&amp;quot;top&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;File Types&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
    &amp;lt;th width=&amp;quot;442&amp;quot; bgcolor=&amp;quot;#C0C0C0&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;Description&amp;lt;/h4&amp;gt;&amp;lt;/th&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;anims&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    [[Mod_Development:Cursors]]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Cursors&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;download&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    [[Units:Download_TDF]]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Information to assign a unit to a location on a given build menu.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;features&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Contains information about miscellaneous features, such as corpses, trees, scars, etc., that may or may not be specific to particular maps or map types.&amp;amp;nbsp; &amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;82&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;\&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;86&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;corpses&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    TDF&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Information about wreckage left behind when a unit dies.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;82&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;\&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;86&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;allworlds&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    TDF&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Information about features (such as trees, scars, etc.) for specific world maps.Other subdirectories may exist alongside &amp;amp;quot;allworlds&amp;amp;quot;, such as &amp;amp;quot;acid&amp;amp;quot;, &amp;amp;quot;crystal&amp;amp;quot;, &amp;amp;quot;green&amp;amp;quot;, etc.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;gamedata&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    [[Mod_Development:Gamedata]]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;General information, such as sound assignments, can-build information, and other such data.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;guis&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    GUI&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Alternative build tree definition method&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;objects3d&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    3DO&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;3D object definitions for units, unit corpses.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; rowspan=&amp;quot;2&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;maps&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    SMD&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Schema, starting points, and other information pertaining to a particular map.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    SMF&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Map layout, heights, and features information.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; rowspan=&amp;quot;2&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;scripts&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    BOS&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Text description/subroutines that describe how a unit moves, animates, etc.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    COB&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;A compiled version of the .BOS file.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;sounds&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    WAV&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Sounds.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;unitpics&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    [[Units:Buildpics]]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;amp;quot;Large&amp;amp;quot; (96x96) color pictures of units.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;unittextures&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;amp;nbsp;&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;82&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;\&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;86&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;tatex&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    [[Units:Textures]]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Bitmap textures used on units (buildings, kbots, vehicles, etc.)&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;units&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    [[Units:FBI]]&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;General properties of units.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
  &amp;lt;tr&amp;gt;&lt;br /&gt;
    &amp;lt;td colspan=&amp;quot;2&amp;quot; width=&amp;quot;174&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;&amp;lt;h4&amp;gt;&amp;lt;strong&amp;gt;weapons&amp;lt;/strong&amp;gt;&amp;lt;/h4&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;140&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot; valign=&amp;quot;top&amp;quot;&amp;gt;&lt;br /&gt;
    TDF&lt;br /&gt;
    &amp;lt;/td&amp;gt;&lt;br /&gt;
    &amp;lt;td width=&amp;quot;442&amp;quot; valign=&amp;quot;top&amp;quot; bordercolor=&amp;quot;#000000&amp;quot; bordercolorlight=&amp;quot;#808080&amp;quot;&amp;gt;Contains the definiteion and properties of particular weapons that are used throughout the game.&amp;lt;/td&amp;gt;&lt;br /&gt;
  &amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>82.250.27.168</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=301</id>
		<title>3DModels:Textures</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=301"/>
		<updated>2005-09-01T12:32:01Z</updated>

		<summary type="html">&lt;p&gt;82.250.27.168: /* Conversion from .gaf */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Textures are stored in the &amp;lt;b&amp;gt;UnitTextures\tatex&amp;lt;/b&amp;gt; subdirectory. They may be Windows .BMP format at 24 bit color depth, or a Targa .TGA file in 32 bit (alpha layer) color depth.&lt;br /&gt;
&lt;br /&gt;
==Rules for textures==&lt;br /&gt;
Spring only has support for 2048x2048 pixels worth of textures installed at any given time. However, the game sorts the textures on this sheet (which only exists while the game is loaded) very well, so if you follow a few simple rules the texture limit will be no problem:&lt;br /&gt;
&lt;br /&gt;
*Keep textures limited to dimensions that are base-2 numbers, such as 8x8, 16x16, 32x32, or 64x64. They may also be oblong, 64x32 for example. &lt;br /&gt;
*Keep your textures as small as possible while still looking good. You can use a texture which is 256x256 pixels, for example, but a set of those would quickly eat up the available space. &lt;br /&gt;
*Don&#039;t make &amp;quot;shaded&amp;quot; textures like Cavedog did for Total Annihilation; let Spring handle the shading instead.&lt;br /&gt;
&lt;br /&gt;
For Spring to read your textures, they must also be named properly. For example, if you use the texture &amp;quot;MetalTexture1&amp;quot; on your 3do file, the texture must be named &amp;quot;MetalTexture100.bmp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Logo Textures==&lt;br /&gt;
In the case of logo textures, you must edit the file &amp;lt;b&amp;gt;teamtex.txt&amp;lt;/b&amp;gt; in the &amp;lt;b&amp;gt;UnitTextures/tatex&amp;lt;/b&amp;gt; directory. It is easy to understand. Just add the name of your texture to the list, without the &amp;quot;00&amp;quot; as previously detailed. For example, if you wanted to add ArmLogo00.bmp to the team color list, you would put ArmLogo in the teamtex.txt file. As team colors are sequential, you must have a file for each different color. If you have ArmLogo00.bmp, there must also be an ArmLogo01.bmp, ArmLogo02.bmp, etc which match the colors of the other team textures available (it would look weird if the paint job was blue but the logo was red!).&lt;br /&gt;
&lt;br /&gt;
==Reflections==&lt;br /&gt;
To make a texture reflect its environment, you must create a Targa file with an alpha layer with a program such as Photoshop. Targa textures follow the same rules above as bitmaps, however, Spring will display reflections on the texture in game if the user has that graphics option enabled and available to him. In the alpha layer itself, a darker shade will reflect less, whereas a lighter shade will reflect more.&lt;br /&gt;
&lt;br /&gt;
==Conversion from .gaf==&lt;br /&gt;
In Total Annihilation textures were stored in /Textures/*.gaf. If you&#039;re porting an old TA mods, there will be hundreds of textures to convert to Spring format. There is an easy way to automatically extract all the texture from all the .gaf into well named .bmp : Download [http://www.planetannihilation.com/bsr/downloads/GAFDump.zip GAF Dump]. Then run GAFDump.exe, from inside the folder your textures are, and with the &#039;&#039;&#039;-b&#039;&#039;&#039; commandline option.&lt;/div&gt;</summary>
		<author><name>82.250.27.168</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=300</id>
		<title>3DModels:Textures</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=300"/>
		<updated>2005-09-01T12:30:56Z</updated>

		<summary type="html">&lt;p&gt;82.250.27.168: /* Conversion from .gaf */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Textures are stored in the &amp;lt;b&amp;gt;UnitTextures\tatex&amp;lt;/b&amp;gt; subdirectory. They may be Windows .BMP format at 24 bit color depth, or a Targa .TGA file in 32 bit (alpha layer) color depth.&lt;br /&gt;
&lt;br /&gt;
==Rules for textures==&lt;br /&gt;
Spring only has support for 2048x2048 pixels worth of textures installed at any given time. However, the game sorts the textures on this sheet (which only exists while the game is loaded) very well, so if you follow a few simple rules the texture limit will be no problem:&lt;br /&gt;
&lt;br /&gt;
*Keep textures limited to dimensions that are base-2 numbers, such as 8x8, 16x16, 32x32, or 64x64. They may also be oblong, 64x32 for example. &lt;br /&gt;
*Keep your textures as small as possible while still looking good. You can use a texture which is 256x256 pixels, for example, but a set of those would quickly eat up the available space. &lt;br /&gt;
*Don&#039;t make &amp;quot;shaded&amp;quot; textures like Cavedog did for Total Annihilation; let Spring handle the shading instead.&lt;br /&gt;
&lt;br /&gt;
For Spring to read your textures, they must also be named properly. For example, if you use the texture &amp;quot;MetalTexture1&amp;quot; on your 3do file, the texture must be named &amp;quot;MetalTexture100.bmp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Logo Textures==&lt;br /&gt;
In the case of logo textures, you must edit the file &amp;lt;b&amp;gt;teamtex.txt&amp;lt;/b&amp;gt; in the &amp;lt;b&amp;gt;UnitTextures/tatex&amp;lt;/b&amp;gt; directory. It is easy to understand. Just add the name of your texture to the list, without the &amp;quot;00&amp;quot; as previously detailed. For example, if you wanted to add ArmLogo00.bmp to the team color list, you would put ArmLogo in the teamtex.txt file. As team colors are sequential, you must have a file for each different color. If you have ArmLogo00.bmp, there must also be an ArmLogo01.bmp, ArmLogo02.bmp, etc which match the colors of the other team textures available (it would look weird if the paint job was blue but the logo was red!).&lt;br /&gt;
&lt;br /&gt;
==Reflections==&lt;br /&gt;
To make a texture reflect its environment, you must create a Targa file with an alpha layer with a program such as Photoshop. Targa textures follow the same rules above as bitmaps, however, Spring will display reflections on the texture in game if the user has that graphics option enabled and available to him. In the alpha layer itself, a darker shade will reflect less, whereas a lighter shade will reflect more.&lt;br /&gt;
&lt;br /&gt;
==Conversion from .gaf==&lt;br /&gt;
In Total Annihilation textures were stored in /Textures/*.gaf. There is an easy way to automatically extract all the texture from all the .gaf into well named .bmp : Download [http://www.planetannihilation.com/bsr/downloads/GAFDump.zip GAF Dump]. Then run GAFDump.exe, from inside the folder your textures are, and with the &#039;&#039;&#039;-b&#039;&#039;&#039; commandline option.&lt;/div&gt;</summary>
		<author><name>82.250.27.168</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=299</id>
		<title>3DModels:Textures</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=299"/>
		<updated>2005-09-01T12:30:43Z</updated>

		<summary type="html">&lt;p&gt;82.250.27.168: /* Conversion from .gaf */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Textures are stored in the &amp;lt;b&amp;gt;UnitTextures\tatex&amp;lt;/b&amp;gt; subdirectory. They may be Windows .BMP format at 24 bit color depth, or a Targa .TGA file in 32 bit (alpha layer) color depth.&lt;br /&gt;
&lt;br /&gt;
==Rules for textures==&lt;br /&gt;
Spring only has support for 2048x2048 pixels worth of textures installed at any given time. However, the game sorts the textures on this sheet (which only exists while the game is loaded) very well, so if you follow a few simple rules the texture limit will be no problem:&lt;br /&gt;
&lt;br /&gt;
*Keep textures limited to dimensions that are base-2 numbers, such as 8x8, 16x16, 32x32, or 64x64. They may also be oblong, 64x32 for example. &lt;br /&gt;
*Keep your textures as small as possible while still looking good. You can use a texture which is 256x256 pixels, for example, but a set of those would quickly eat up the available space. &lt;br /&gt;
*Don&#039;t make &amp;quot;shaded&amp;quot; textures like Cavedog did for Total Annihilation; let Spring handle the shading instead.&lt;br /&gt;
&lt;br /&gt;
For Spring to read your textures, they must also be named properly. For example, if you use the texture &amp;quot;MetalTexture1&amp;quot; on your 3do file, the texture must be named &amp;quot;MetalTexture100.bmp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Logo Textures==&lt;br /&gt;
In the case of logo textures, you must edit the file &amp;lt;b&amp;gt;teamtex.txt&amp;lt;/b&amp;gt; in the &amp;lt;b&amp;gt;UnitTextures/tatex&amp;lt;/b&amp;gt; directory. It is easy to understand. Just add the name of your texture to the list, without the &amp;quot;00&amp;quot; as previously detailed. For example, if you wanted to add ArmLogo00.bmp to the team color list, you would put ArmLogo in the teamtex.txt file. As team colors are sequential, you must have a file for each different color. If you have ArmLogo00.bmp, there must also be an ArmLogo01.bmp, ArmLogo02.bmp, etc which match the colors of the other team textures available (it would look weird if the paint job was blue but the logo was red!).&lt;br /&gt;
&lt;br /&gt;
==Reflections==&lt;br /&gt;
To make a texture reflect its environment, you must create a Targa file with an alpha layer with a program such as Photoshop. Targa textures follow the same rules above as bitmaps, however, Spring will display reflections on the texture in game if the user has that graphics option enabled and available to him. In the alpha layer itself, a darker shade will reflect less, whereas a lighter shade will reflect more.&lt;br /&gt;
&lt;br /&gt;
==Conversion from .gaf==&lt;br /&gt;
In Total Annihilation textures were stored in /Textures/*.gaf. There is an easy way to automatically extract all the texture from all the .gaf into well named .bmp : Download [http://www.planetannihilation.com/bsr/downloads/GAFDump.zip GAF Dump]. Then run GAFDump.exe, from inside the folder your textures are, and with the &#039;&#039;-b&#039;&#039; commandline option.&lt;/div&gt;</summary>
		<author><name>82.250.27.168</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=298</id>
		<title>3DModels:Textures</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=298"/>
		<updated>2005-09-01T12:30:28Z</updated>

		<summary type="html">&lt;p&gt;82.250.27.168: /* Conversion from .gaf */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Textures are stored in the &amp;lt;b&amp;gt;UnitTextures\tatex&amp;lt;/b&amp;gt; subdirectory. They may be Windows .BMP format at 24 bit color depth, or a Targa .TGA file in 32 bit (alpha layer) color depth.&lt;br /&gt;
&lt;br /&gt;
==Rules for textures==&lt;br /&gt;
Spring only has support for 2048x2048 pixels worth of textures installed at any given time. However, the game sorts the textures on this sheet (which only exists while the game is loaded) very well, so if you follow a few simple rules the texture limit will be no problem:&lt;br /&gt;
&lt;br /&gt;
*Keep textures limited to dimensions that are base-2 numbers, such as 8x8, 16x16, 32x32, or 64x64. They may also be oblong, 64x32 for example. &lt;br /&gt;
*Keep your textures as small as possible while still looking good. You can use a texture which is 256x256 pixels, for example, but a set of those would quickly eat up the available space. &lt;br /&gt;
*Don&#039;t make &amp;quot;shaded&amp;quot; textures like Cavedog did for Total Annihilation; let Spring handle the shading instead.&lt;br /&gt;
&lt;br /&gt;
For Spring to read your textures, they must also be named properly. For example, if you use the texture &amp;quot;MetalTexture1&amp;quot; on your 3do file, the texture must be named &amp;quot;MetalTexture100.bmp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Logo Textures==&lt;br /&gt;
In the case of logo textures, you must edit the file &amp;lt;b&amp;gt;teamtex.txt&amp;lt;/b&amp;gt; in the &amp;lt;b&amp;gt;UnitTextures/tatex&amp;lt;/b&amp;gt; directory. It is easy to understand. Just add the name of your texture to the list, without the &amp;quot;00&amp;quot; as previously detailed. For example, if you wanted to add ArmLogo00.bmp to the team color list, you would put ArmLogo in the teamtex.txt file. As team colors are sequential, you must have a file for each different color. If you have ArmLogo00.bmp, there must also be an ArmLogo01.bmp, ArmLogo02.bmp, etc which match the colors of the other team textures available (it would look weird if the paint job was blue but the logo was red!).&lt;br /&gt;
&lt;br /&gt;
==Reflections==&lt;br /&gt;
To make a texture reflect its environment, you must create a Targa file with an alpha layer with a program such as Photoshop. Targa textures follow the same rules above as bitmaps, however, Spring will display reflections on the texture in game if the user has that graphics option enabled and available to him. In the alpha layer itself, a darker shade will reflect less, whereas a lighter shade will reflect more.&lt;br /&gt;
&lt;br /&gt;
==Conversion from .gaf==&lt;br /&gt;
In Total Annihilation textures were stored in /Textures/*.gaf. There is an easy way to automatically extract all the texture from all the .gaf into well named .bmp : Download [http://www.planetannihilation.com/bsr/downloads/GAFDump.zip GAF Dump]. Then run GAFDump.exe, from inside the folder your textures are, and with the &#039;-B&#039; commandline option.&lt;/div&gt;</summary>
		<author><name>82.250.27.168</name></author>
	</entry>
	<entry>
		<id>https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=297</id>
		<title>3DModels:Textures</title>
		<link rel="alternate" type="text/html" href="https://springrts-wiki.p2004a.com/mediawiki/index.php?title=3DModels:Textures&amp;diff=297"/>
		<updated>2005-09-01T12:29:56Z</updated>

		<summary type="html">&lt;p&gt;82.250.27.168: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Textures are stored in the &amp;lt;b&amp;gt;UnitTextures\tatex&amp;lt;/b&amp;gt; subdirectory. They may be Windows .BMP format at 24 bit color depth, or a Targa .TGA file in 32 bit (alpha layer) color depth.&lt;br /&gt;
&lt;br /&gt;
==Rules for textures==&lt;br /&gt;
Spring only has support for 2048x2048 pixels worth of textures installed at any given time. However, the game sorts the textures on this sheet (which only exists while the game is loaded) very well, so if you follow a few simple rules the texture limit will be no problem:&lt;br /&gt;
&lt;br /&gt;
*Keep textures limited to dimensions that are base-2 numbers, such as 8x8, 16x16, 32x32, or 64x64. They may also be oblong, 64x32 for example. &lt;br /&gt;
*Keep your textures as small as possible while still looking good. You can use a texture which is 256x256 pixels, for example, but a set of those would quickly eat up the available space. &lt;br /&gt;
*Don&#039;t make &amp;quot;shaded&amp;quot; textures like Cavedog did for Total Annihilation; let Spring handle the shading instead.&lt;br /&gt;
&lt;br /&gt;
For Spring to read your textures, they must also be named properly. For example, if you use the texture &amp;quot;MetalTexture1&amp;quot; on your 3do file, the texture must be named &amp;quot;MetalTexture100.bmp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Logo Textures==&lt;br /&gt;
In the case of logo textures, you must edit the file &amp;lt;b&amp;gt;teamtex.txt&amp;lt;/b&amp;gt; in the &amp;lt;b&amp;gt;UnitTextures/tatex&amp;lt;/b&amp;gt; directory. It is easy to understand. Just add the name of your texture to the list, without the &amp;quot;00&amp;quot; as previously detailed. For example, if you wanted to add ArmLogo00.bmp to the team color list, you would put ArmLogo in the teamtex.txt file. As team colors are sequential, you must have a file for each different color. If you have ArmLogo00.bmp, there must also be an ArmLogo01.bmp, ArmLogo02.bmp, etc which match the colors of the other team textures available (it would look weird if the paint job was blue but the logo was red!).&lt;br /&gt;
&lt;br /&gt;
==Reflections==&lt;br /&gt;
To make a texture reflect its environment, you must create a Targa file with an alpha layer with a program such as Photoshop. Targa textures follow the same rules above as bitmaps, however, Spring will display reflections on the texture in game if the user has that graphics option enabled and available to him. In the alpha layer itself, a darker shade will reflect less, whereas a lighter shade will reflect more.&lt;br /&gt;
&lt;br /&gt;
==Conversion from .gaf==&lt;br /&gt;
In Total Annihilation textures were stored in /Textures/*.gaf. There is an easy way to automatically extract all the texture from all the .gaf into well named .bmp : Download [http://www.planetannihilation.com/bsr/downloads/GAFDump.zip HPI Dump]. Then run GafDump.exe, from inside the folder your textures are, and with the &#039;-B&#039; commandline option.&lt;/div&gt;</summary>
		<author><name>82.250.27.168</name></author>
	</entry>
</feed>