Commit Graph

62 Commits

Author SHA1 Message Date
Gael-de-Sailly
40098d6be3 Use standard int instead of uint8, int32, etc.
Much faster with NumPy.
2020-12-24 14:48:17 +01:00
Gael-de-Sailly
faef1658a9 Fixed map centering, and converted polygon coordinates to map nodes instead of grid nodes. 2020-12-22 16:38:30 +01:00
Gael-de-Sailly
d5cf4a6267 Optionally center the map around x=0 z=0 2020-12-20 22:28:54 +01:00
Gael-de-Sailly
53f88d337d Protect map preview from exceptions
Since map preview is optional, an exception should not propagate to terrain calculation, so print an error message + traceback but keep the script running.
2020-11-25 13:12:24 +01:00
Gael-de-Sailly
3644965842 Fix bool settings being improperly loaded as strings 2020-11-17 20:56:02 +01:00
Gael-de-Sailly
9725979363 Fix increments for argument parsing 2020-11-17 20:45:11 +01:00
Gael-de-Sailly
ebacd3cdd4 Add license, update/improve documentation 2020-11-15 11:43:30 +01:00
Gael-de-Sailly
fc0a158385 Disable glaciers by default 2020-11-15 11:26:50 +01:00
Gael-de-Sailly
050ca3b779 Change demo data, update to a grid using new default parameters 2020-11-15 11:19:28 +01:00
Gael-de-Sailly
1f41423104 Print a clear message when grid is ready
Also use plt.pause before plotting, ensuring plot is updated in real time
2020-11-15 11:13:42 +01:00
Gael-de-Sailly
52766e8918 Added settingtypes 2020-11-15 11:10:19 +01:00
Gael-de-Sailly
28c674d57c Decrease default diffusion factor 2020-11-14 19:14:09 +01:00
Gael-de-Sailly
90f60ea6fb typo 2020-11-14 19:13:58 +01:00
Gael-de-Sailly
803114aaab Generate data in river_data instead of data 2020-11-14 19:12:12 +01:00
Gael-de-Sailly
9594a79f8b Configurable output directory
Now relative to the directory the script is *run in*.
2020-11-14 18:26:13 +01:00
Gael-de-Sailly
d93234c9b7 Moved Python files inside a folder (package), except the 2 that are directly executable 2020-11-14 17:35:27 +01:00
Gael-de-Sailly
7acd0af550 Use biomegen.generate_all 2020-11-14 17:35:03 +01:00
Gael-de-Sailly
3792cd5dc8 Added support for biomegen mod 2020-11-14 17:35:03 +01:00
Gael-de-Sailly
6b9c091dd5 Fix file opening mode on the Lua side, to avoid crashes on Windows 2020-11-14 17:31:36 +01:00
Gael-de-Sailly
b90cecdaf7 Allow command-line options for Python processing 2020-11-14 14:30:53 +01:00
Gael-de-Sailly
c33f2d9582 Python side: rework config system.
Load `terrain.conf` of the script directory by default.
Add a `terrain_higher.conf` for alternative terrain.
2020-11-14 12:19:40 +01:00
Gael-de-Sailly
8a15bc924d Dynamic map displaying
Map is displayed at every iteration if matplotlib library is installed
2020-11-14 12:05:52 +01:00
Gael-de-Sailly
3fda369fb5 Rewritten map viewer
Now displays map statistics even if there is no matplotlib
2020-11-13 11:04:27 +01:00
Gael-de-Sailly
30136bf60a Added scale (blocksize) parameter for view_map.py 2020-11-10 13:19:20 +01:00
Gael-de-Sailly
9475b49b8d Removed duplicate calls to 2 scripts 2020-11-10 13:18:02 +01:00
Gael-de-Sailly
36b49a7fe2 Add settings for parameters in terrain_rivers.py 2020-07-21 14:12:20 +02:00
Gaël de Sailly
103cd49d78 Optionally disable distorsion
by setting 'mapgen_rivers_distort = false' in minetest.conf
2020-07-21 14:01:29 +02:00
Gaël de Sailly
25c5cb2e1f Reverse axes order for heightmaps (iterate in Z direction first instead of X) 2020-07-21 12:46:23 +02:00
Gael-de-Sailly
6f43430574 Added glaciers, and re-organized noise definitions 2020-05-24 12:09:21 +02:00
Gael-de-Sailly
625768f967 Added snow and ice in function of temperature.
Uses noise parameters of builtin biomegen
2020-05-23 18:13:00 +02:00
Gael-de-Sailly
4edd1a946e Horizontal shifting according to 3D noises:
makes slopes more irregular and natural-looking, allows overhanging.
This is done by generating an intermediate 2D elevation map and, for each node in 3D, add a 2D offset vector to the position, and seek this position on the heightmap.
2020-05-23 15:52:16 +02:00
Gael-de-Sailly
f56857e804 Fix water not being set at lower chunk borders 2020-05-08 10:02:04 +02:00
Gael-de-Sailly
a73a0dd80b Avoid some redundant calculation on corners
(not very significant, but why not)
2020-04-27 21:08:15 +02:00
Gael-de-Sailly
a9ab0e53d3 Change folder structure: data files are now in a directory.
Also added a demo 400x400 map, that is overriden on pre-processing.
2020-04-26 23:29:36 +02:00
Gaël de Sailly
b429b302e1 Rewritten part of code to calculate river depth
Fixes bathymetry problems on turns or confluences, as well as abrupt riverbanks.
2020-04-26 22:19:05 +02:00
Gael-de-Sailly
cd4b517585 terrain_rivers.py: mapsize is now the number of intervals
instead of the number of nodes.
2020-04-26 19:51:21 +02:00
Gael-de-Sailly
cd90a21df4 Enhanced visualization code to display colormaps, and reuse the same code for initial and further viewing, in view_map.py 2020-04-26 18:30:29 +02:00
Gael-de-Sailly
206c68813e Switch again to using river direction and flux instead of table of bounds 2020-04-26 18:10:23 +02:00
Gael-de-Sailly
6af6795d90 Comment and clarify 2020-04-26 17:13:38 +02:00
Gael-de-Sailly
49bc397718 Fix parameters for Simplex noise, to make sure the last octave has not a greater scale than 1
Also use a 401x401 grid instead of 400, so that there are 400 intervals
2020-04-26 16:52:40 +02:00
Gael-de-Sailly
9700e948b9 Position should be strictly beyond river threshold to be a river
Prevents some wrongly placed water pixels.
2020-04-14 21:54:05 +02:00
Gael-de-Sailly
55725ad94b Re-organized the code. All polygon-related calculations go to polygons.lua. 2020-04-14 21:11:54 +02:00
Gael-de-Sailly
43211fc31b Removed useless functions get_point_location and geometry.area 2020-04-14 20:26:15 +02:00
Gael-de-Sailly
14163681cc Use settings from minetest.conf 2020-04-14 18:40:51 +02:00
Gael-de-Sailly
af7a7ce26d Compress data files (reduces size by a factor 3-4) 2020-04-13 15:59:34 +02:00
Gael-de-Sailly
da98a538bb Draw outer corners of river turns. 2020-04-13 15:01:54 +02:00
Gael-de-Sailly
b5db63d267 Re-added river flow data because needed for map preview 2020-04-13 15:01:44 +02:00
Gael-de-Sailly
1adb4fbece Added an offset of 0.5 on terrain elevation
This prevents rounding errors and improves interpolation on nearly flat areas
2020-04-13 12:27:24 +02:00
Gael-de-Sailly
13d3e70b66 Implemented variable river width.
Also changed the river data exported by terrain_rivers.py. They will not be compatible with what's generated by older versions.
2020-04-13 12:15:10 +02:00
Gael-de-Sailly
4b63ed371e Add more information in the polygon table 2020-04-13 10:31:38 +02:00