MapConvNG: Difference between revisions
No edit summary |
|||
| (34 intermediate revisions by 5 users not shown) | |||
| Line 1: | Line 1: | ||
MapConvNG is a complete rewrite of [[MapConv]] to work flawlessly on linux and on windows. It also contains smfdecompiler. | |||
==Download== | |||
Since 2019.10.01 it is part of the official spring build: | |||
fetch it from https://springrts.com/dl/buildbot/default/develop/ | |||
== | == Sources == | ||
<code> | |||
git clone git://github.com/spring/SpringMapConvNG.git | |||
<code> | |||
</code> | </code> | ||
[[Category:Map | https://github.com/spring/SpringMapConvNG | ||
== Bugs == | |||
Please report bugs at https://springrts.com/mantis/ | |||
== Reformatted Help Output == | |||
<code><pre> | |||
Usage: | |||
springMapConvNG [options] -t <texturemap> -o <output filename> | |||
General Options: | |||
-h help | |||
-o <string> output file name | |||
Map Options: | |||
-features <string> features file | |||
-minimap <string> minimap image [1024x1024] | |||
-maxh <float> white height value | |||
-minh <float> black height value | |||
-noclamp Disables height map clamping, explained below. | |||
-smooth Smooth | |||
Texture Map Inputs: | |||
-h <string> height map, [texture_x / 8 + 1, texture_y / 8 + 1] | |||
-m <string> metal map, [texture_x / 16, texture_y / 16] | |||
-t <string> texture map, Dimensions must be divisible by 1024 | |||
-v <string> vegetation map, [texture_x / 32, texture_y / 32] | |||
-z <string> type map, [texture_x / 16, texture_y / 16] | |||
Compilation Options: | |||
-ct <integer> compression type 1,2,3 or 4 explained below. | |||
-ccount <integer> compare_tilecount | |||
-th <float> compression level | |||
Feature file: | |||
Each line is a feature instance and has the fields in the following order | |||
[tdfname] [xpos] [ypos] [zpos] [rotation yaxis] | |||
Please do not leave whitespaces at the end or it will give errors. | |||
If you specify less than -490000 as ypos , it will calculate ypos | |||
depending on terrain height | |||
noclamp: | |||
disables heightmap clamping to max-min values , you should avoid using that, | |||
cause you lose precision, if you want less high landscape use maxh and minh | |||
Compression Type: | |||
1: No compression | |||
2: Fast compression , compare tile with last -ccount tiles , take first | |||
which difference is below -th | |||
3: Insane Compression: compare each tile with whole map , it is very SLOW, | |||
not recomended | |||
4: High quality Fast compression: Slightly slower than 2 , it searchs for | |||
less different tile in last -ccount tiles | |||
</pre></code> | |||
== Important information == | |||
* Althought the color / diffuse texture resolution must be a multiple of 1024, bear in mind that in Spring each map unit corresponds to 512px. So an 8k image equals to a 16x16 map in game. | |||
* Texture (diffuse), minimap, height and metal maps should be flipped vertically in an image editing program, there's no -i option in MapConvNG (as in the older and much slower MapConv) | |||
* HDR and EXR images may also be used, ideal to keep the 16-bit quality of height maps. If you use Photoshop, check this free HDR input/output plugin: https://www.exr-io.com/ | |||
* In case you add a custom minimap of a non-square map, notice that the image is stretched out to fit the map proportion - so don't add black borders, just stretch it to 1024x1024 in your image editing program. | |||
== Suggested Parameters == | |||
-ct 2 : Compression Type , 1 is no compression at all , 2 - Compresses but comparing with limited set of tiles , 3 - Compares with ALL tiles , it can take ages to compile , you've been warned! | |||
-th 0.03 : Compression Level , Higher compresses more , but adds more artifacts, 0.03 is a good compromise | |||
* If you use -ct 1 and your texture doesn't show up, try -ct 2 with -th 0.01 | |||
-smooth : Does a bit of gaussian blur on HDR heightmap , it is especially useful when loading 8 bit images | |||
* after applying reduction to your heightmap in an image editing program, filtering artifacts might lead to spikes in your map in-game. Using -smooth usually works out this kind of issue | |||
== Features [featurefile] parameter == | |||
Feature file is a simple text file, each line defines a feature with the space-separated fields: Name XPos YPos ZPos Orientation(Degrees)<br /> | |||
Follows an example: | |||
<code>Rock1 6000 -500000 3000 0</code><br /> | |||
<code>Rock2 4000 200 1000 180</code> | |||
* Result: | |||
** Rock1 will be placed on terrain surface (numbers below -490000 are interpreted as "place on ground") | |||
** Rock2 will be placed precisely at 4000x200x1000 | |||
<br /> | |||
* To place a thermal vent, simply use 'GeoVent' as the feature name in a feature file. | |||
[[Category:Map Tools]] | |||
Latest revision as of 13:08, 4 October 2019
MapConvNG is a complete rewrite of MapConv to work flawlessly on linux and on windows. It also contains smfdecompiler.
Download
Since 2019.10.01 it is part of the official spring build:
fetch it from https://springrts.com/dl/buildbot/default/develop/
Sources
git clone git://github.com/spring/SpringMapConvNG.git
https://github.com/spring/SpringMapConvNG
Bugs
Please report bugs at https://springrts.com/mantis/
Reformatted Help Output
Usage:
springMapConvNG [options] -t <texturemap> -o <output filename>
General Options:
-h help
-o <string> output file name
Map Options:
-features <string> features file
-minimap <string> minimap image [1024x1024]
-maxh <float> white height value
-minh <float> black height value
-noclamp Disables height map clamping, explained below.
-smooth Smooth
Texture Map Inputs:
-h <string> height map, [texture_x / 8 + 1, texture_y / 8 + 1]
-m <string> metal map, [texture_x / 16, texture_y / 16]
-t <string> texture map, Dimensions must be divisible by 1024
-v <string> vegetation map, [texture_x / 32, texture_y / 32]
-z <string> type map, [texture_x / 16, texture_y / 16]
Compilation Options:
-ct <integer> compression type 1,2,3 or 4 explained below.
-ccount <integer> compare_tilecount
-th <float> compression level
Feature file:
Each line is a feature instance and has the fields in the following order
[tdfname] [xpos] [ypos] [zpos] [rotation yaxis]
Please do not leave whitespaces at the end or it will give errors.
If you specify less than -490000 as ypos , it will calculate ypos
depending on terrain height
noclamp:
disables heightmap clamping to max-min values , you should avoid using that,
cause you lose precision, if you want less high landscape use maxh and minh
Compression Type:
1: No compression
2: Fast compression , compare tile with last -ccount tiles , take first
which difference is below -th
3: Insane Compression: compare each tile with whole map , it is very SLOW,
not recomended
4: High quality Fast compression: Slightly slower than 2 , it searchs for
less different tile in last -ccount tiles
Important information
- Althought the color / diffuse texture resolution must be a multiple of 1024, bear in mind that in Spring each map unit corresponds to 512px. So an 8k image equals to a 16x16 map in game.
- Texture (diffuse), minimap, height and metal maps should be flipped vertically in an image editing program, there's no -i option in MapConvNG (as in the older and much slower MapConv)
- HDR and EXR images may also be used, ideal to keep the 16-bit quality of height maps. If you use Photoshop, check this free HDR input/output plugin: https://www.exr-io.com/
- In case you add a custom minimap of a non-square map, notice that the image is stretched out to fit the map proportion - so don't add black borders, just stretch it to 1024x1024 in your image editing program.
Suggested Parameters
-ct 2 : Compression Type , 1 is no compression at all , 2 - Compresses but comparing with limited set of tiles , 3 - Compares with ALL tiles , it can take ages to compile , you've been warned!
-th 0.03 : Compression Level , Higher compresses more , but adds more artifacts, 0.03 is a good compromise
- If you use -ct 1 and your texture doesn't show up, try -ct 2 with -th 0.01
-smooth : Does a bit of gaussian blur on HDR heightmap , it is especially useful when loading 8 bit images
- after applying reduction to your heightmap in an image editing program, filtering artifacts might lead to spikes in your map in-game. Using -smooth usually works out this kind of issue
Features [featurefile] parameter
Feature file is a simple text file, each line defines a feature with the space-separated fields: Name XPos YPos ZPos Orientation(Degrees)
Follows an example:
Rock1 6000 -500000 3000 0
Rock2 4000 200 1000 180
- Result:
- Rock1 will be placed on terrain surface (numbers below -490000 are interpreted as "place on ground")
- Rock2 will be placed precisely at 4000x200x1000
- To place a thermal vent, simply use 'GeoVent' as the feature name in a feature file.