Mapdev:height: Difference between revisions

From Spring
Jump to navigationJump to search
m cleaned up a little.
m →mapinfo.lua: added line about water.
Line 10: Line 10:
= Specification =
= Specification =
== mapinfo.lua ==
== mapinfo.lua ==
The relevant sections of the mapinfo.lua file that effect the height of the ground are in the [[Map_Making:mapinfo.lua#smf|SMF]] subtable
<code><pre>local mapinfo = {
<code><pre>local mapinfo = {
   ...
   ...
Line 20: Line 19:
   ...
   ...
}</pre></code>
}</pre></code>
Any values below zero are underwater, see [[Mapdev:water]]


== Image File ==
== Image File ==

Revision as of 06:55, 28 December 2012

Height

The height of the terrain is generally defined with a greyscale displacement map with black representing the lowest point on the terrain and white the highest. The height of the terrain can also be modified in game via lua scripting.

Example
Example Height Map Ingame Result

Specification

mapinfo.lua

local mapinfo = {
   ...
   smf = {
      minHeight = 1000,
      maxHeight = -300,
      ...
   },
   ...
}

Any values below zero are underwater, see Mapdev:water

Image File

  • The height map is an intermediary file compiled into the SMF/SMT files using MapConv or MapConvNG.
  • 8 or 16 bpp Greyscale
Spring Map Size* pixels = Spring Map Size * 64 + 1
2 129
4 257
6 385
... ...
32 2049
* must be multiples of 2

8 vs 16 bpp

These two images show the differences in prescision that the bit depth of the image makes. The effect has been exaggerated here for clarity.

8bpp 16bpp

+1 pixel

When each pixel represents a vertex you need one extra pixel than the number of quads you are attempting to represent

Representation
Example

Additional Information

ROAM terrain engine