Rogier
10e6a746cd
Database performance tweaks
...
Added the option to bulk load and cache entire world rows at
a time when using sqlite. Caching is implemented in the
database class this time around.
Enabled using --sqlite-cacheworldrow on the command line.
This is essentially re-introduces the database access strategy
that was used originally, but as an option.
Currently, one block is read at a time from the database.
The original behavior was to read and cache one entire world
row at a time, irrespective of whether or not only a (small)
subsection of the world was being mapped.
Under some circumstances, in particular if the entire world is
mapped or a relatively large percentage of it (blocks-wise), the
bulk loading and caching may outperform the one-by-one strategy,
even though it usually loads many more blocks than are actually
needed.
It seems that leveldb won't benefit from any kind of caching or
bulk loading of blocks, so none was implemented.
Leveldb does compile now. Still not tested on a database :-(
Improved the database statistics (printed with --verbose).
2014-03-26 00:23:33 +01:00
Rogier
ecbe59ac82
Optimize database access - load only blocks that are needed
2014-03-24 22:43:32 +01:00
Rogier
440edca394
Report number of 16x16x16 blocks in world and map as well, with --verbose
2014-03-23 20:53:13 +01:00
Rogier
5296f9f9e7
Report world coordinate limits and map heigth and depth limits with --verbose
2014-03-23 20:52:58 +01:00
Rogier
6420eb48fb
Add option --forcegeometry to force using the requested geometry
...
Instead of reducing the map size to the minimum necessary for the
size of the world, a map of the requested size is always generated.
2014-03-23 20:06:35 +01:00
Rogier
a2bec337a9
Fix vertical limits handling
...
Node and map-block coordinates were mixed up, causing the min/max
vertical coordinate limitation to be broken.
The confusion was removed, and --min-y and --max-y now work as they
should.
2014-03-23 19:47:49 +01:00
Rogier
a32516d5be
Add option '--verbose', and make it report requested and actual map coordinates.
2014-03-23 18:35:00 +01:00
Rogier
18303eda33
Fix SEGV after failing to open output file: throw runtime error
...
The result of opening the file was not checked, resulting in a
NULL pointer dereference if it failed.
2014-03-23 17:31:50 +01:00
Rogier
4f504a6357
Set initial y limits to INT_MIN/INT_MAX (instead of -/+30000)
2014-03-23 17:15:03 +01:00
Rogier
2a7c53b55a
Fix computation of block number bounds (off-by-one)
...
The block numbers could be off by one due to incorrect rounding.
m_geom* now contain the minimum and maximum block numbers that
should be in the map.
2014-03-23 16:47:00 +01:00
Sfan5
f8edccffb7
Small optimization
2014-03-22 09:30:14 +01:00
Sfan5
5bf2039bbb
Make sure whole map is always drawn
2014-03-16 20:55:09 +01:00
Sfan5
46023f77f5
Make it (almost) compile for windows
2014-03-09 12:32:13 +01:00
Sfan5
0a5a0d0d51
Fix sqlite3 not being usable as backend
2014-03-05 22:40:01 +01:00
Sfan5
393d7e2ac0
LevelDB support
2014-03-05 21:42:21 +01:00
Sfan5
15444ff8f6
Add --min-y and --max-y options
2014-03-05 18:06:05 +01:00
Sfan5
33f323b1e3
Add --noshading option, Fix SIGABRT because of uncaught exception when any exception occured
2014-03-05 17:20:06 +01:00
ShadowNinja
6b511e5e79
Fix unknown nodes showing up as black
2013-03-18 14:12:02 -04:00
Miroslav Bendík
7d15dbf4ed
Added --geometry support.
2012-11-24 19:25:13 +01:00
Miroslav Bendík
5969c61e54
Removed hard size limit.
2012-11-24 18:43:48 +01:00
Miroslav Bendík
28e9450573
Zlib moved into separate module.
2012-09-18 10:43:34 +02:00
Miroslav Bendík
6133aff2f3
Small cast cleaning.
2012-09-18 10:15:50 +02:00
Miroslav Bendík
7c5f4751f6
Player attributes moved to separate class.
2012-09-01 16:40:18 +02:00
Miroslav Bendík
88bf8bc88b
Fixed windows compatibility.
2012-09-01 16:01:08 +02:00
Miroslav Bendík
112ccc5d08
File colors.txt compiled into binary
2012-09-01 15:51:02 +02:00
Miroslav Bendík
1edbba5a94
Added path separator handling.
2012-09-01 13:41:00 +02:00
Miroslav Bendík
6dff561ec0
Rendering Z blocks in reverse order.
2012-09-01 13:34:27 +02:00
Miroslav Bendík
b9e40ed972
Removed Boost dependency.
2012-09-01 13:01:31 +02:00
Miroslav Bendík
cb65bbbc4c
Better sqlite3_open error reporting.
2012-09-01 12:19:33 +02:00
Miroslav Bendík
4d9a3cc5d9
Added windows support.
2012-08-28 11:27:51 +02:00
Miroslav Bendík
e5cafeb8b8
Fixed crash on std::length_error
2012-08-27 07:46:11 +02:00
Miroslav Bendík
5a2375e608
Added printing of unknown nodes.
2012-08-25 16:41:53 +02:00
Miroslav Bendík
8396275bf8
Implemented rendering of names.
2012-08-25 16:29:41 +02:00
Miroslav Bendík
3349bee3a4
Added draworigin.
2012-08-25 15:21:51 +02:00
Miroslav Bendík
b0f36ba4cf
Implemented drawscale.
2012-08-25 15:06:11 +02:00
Miroslav Bendík
908697427b
Removed drawunderground parameter.
2012-08-25 14:12:54 +02:00
Miroslav Bendík
a009d3e191
Added border support.
2012-08-25 14:11:55 +02:00
Miroslav Bendík
5be190b5a1
Removed bad shadows.
2012-08-25 13:27:40 +02:00
Miroslav Bendík
1aee368837
Implemented shading.
2012-08-25 13:21:28 +02:00
Miroslav Bendík
5ad849385a
Moved static functions outside of class.
2012-08-25 07:49:46 +02:00
Miroslav Bendík
eca111cf15
Implemented generation of map.
2012-08-24 22:51:17 +02:00
Miroslav Bendík
18598bba3c
Reading timers.
2012-08-24 14:48:55 +02:00
Miroslav Bendík
2319d5f0ed
Added node name reading.
2012-08-24 14:13:46 +02:00
Miroslav Bendík
feb945b1f9
Added metadata skipping.
2012-08-24 12:10:26 +02:00
Miroslav Bendík
6743984e16
Added zlib decompressor.
2012-08-24 11:49:42 +02:00
Miroslav Bendík
231f48c529
Added sorting of blocks.
2012-08-24 11:01:48 +02:00
Miroslav Bendík
0b9adc95b7
Added storing of blocks.
2012-08-24 10:44:48 +02:00
Miroslav Bendík
6e653648b5
Added reading of data.
2012-08-24 09:46:14 +02:00
Miroslav Bendík
1dc09c4830
Optimized selection of blocks.
2012-08-24 08:31:31 +02:00
Miroslav Bendík
ace6f3b5b5
Added selection of blocks.
2012-08-23 15:35:00 +02:00