<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.pioneerspacesim.net/index.php?action=history&amp;feed=atom&amp;title=Planet_Heightmaps</id>
	<title>Planet Heightmaps - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.pioneerspacesim.net/index.php?action=history&amp;feed=atom&amp;title=Planet_Heightmaps"/>
	<link rel="alternate" type="text/html" href="https://wiki.pioneerspacesim.net/index.php?title=Planet_Heightmaps&amp;action=history"/>
	<updated>2026-09-15T15:30:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.pioneerspacesim.net/index.php?title=Planet_Heightmaps&amp;diff=110&amp;oldid=prev</id>
		<title>Luomu: Imported from GH wiki</title>
		<link rel="alternate" type="text/html" href="https://wiki.pioneerspacesim.net/index.php?title=Planet_Heightmaps&amp;diff=110&amp;oldid=prev"/>
		<updated>2012-09-16T21:50:05Z</updated>

		<summary type="html">&lt;p&gt;Imported from GH wiki&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Height maps live in data/heightmaps/*. There are currently two types. Each type has a different data structure and is modified by a different fractal height/color combo. Type is specified by the second argument to the &amp;lt;tt&amp;gt;height_map&amp;lt;/tt&amp;gt; function in the custom system definition.&lt;br /&gt;
&lt;br /&gt;
== Type 0 (eg Earth) ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
struct HeightMap0Header {&lt;br /&gt;
    Uint16 width;&lt;br /&gt;
    Uint16 height;&lt;br /&gt;
};&lt;br /&gt;
struct HeightMap0 {&lt;br /&gt;
    HeightMap0Header header;&lt;br /&gt;
    Sint16 data[header.width*header.height];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* Traditional docs claim height is in metres, but the sign appears to be important. I expect that means 0 is actually some 2^16m (~65km) from the &amp;amp;quot;surface&amp;amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Type 1 (eg Moon) ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
struct HeightMap1Header {&lt;br /&gt;
    Uint16 height;&lt;br /&gt;
    Uint16 width;&lt;br /&gt;
    // height = height * scaling+minheight&lt;br /&gt;
    double heightScaling;&lt;br /&gt;
    double minh;&lt;br /&gt;
};&lt;br /&gt;
struct HeightMap1 {&lt;br /&gt;
    HeightMap1Header header;&lt;br /&gt;
    Uint16 data[header.width*header.height];&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* Uses scaling and minimum height to provide a wider range of heights&lt;br /&gt;
* Data is ''unsigned'' (because of the minimum height)&lt;br /&gt;
* width and height are ''reversed'' from Type 0&lt;/div&gt;</summary>
		<author><name>Luomu</name></author>
		
	</entry>
</feed>