Commit graph

27 commits

Author SHA1 Message Date
8e369f33fd
Add license and repository info to all crates 2023-08-21 21:50:57 +02:00
4f3b43e4a4
Add missing serde derive feature to Cargo.toml 2023-08-21 17:07:03 +02:00
228f31c568
Move resource module to a separate crate
The resource module does not depend on any other part of MinedMap.
2023-08-20 17:00:10 +02:00
248a641035
Restructure crates
Get rid of the arbitrary bin/lib split and instead move as much as
possible into the bin crate, which becomes the main crate again.

The types and NBT handling are moved into separate crates, so they can
be reused by nbtdump and regiondump.
2023-08-20 17:00:10 +02:00
9ec1c03ce1
Only name library crate rather than whole package "minedmap-core" 2023-08-20 14:15:29 +02:00
ba86dc8c06
resource: use serde feature of enumflags2 crate 2023-08-19 16:01:51 +02:00
0842cb4ec2
Rename library crate to minedmap-core
Rustdoc can't deal with a bin and lib crate with the same name.
2023-08-18 19:20:21 +02:00
b5980b82af
minedmap/tile_renderer: async region cache
Prepare for sharing the region cache between multiple threads by making
lookup/load async.
2023-08-15 17:42:27 +02:00
78fe1ec50e
minedmap: add support for parallel processing
For now, only RegionProcessor and TileMipmapper are run in parallel.
2023-08-14 22:38:21 +02:00
84bee6d6d9
minedmap: add region cache
Cache the last loaded processed regions.
2023-08-05 20:26:59 +02:00
deb33814ee
minedmap/tile_renderer: avoid calling block_color() more often than necessary
Collect all biome indices/weights for a chunk and deduplicate using a
hash map.
2023-08-03 23:07:16 +02:00
fb712cd2f5
Store per-region biome list in IndexSet
Index into the biome list instead of duplicating the biome data for each
coordinate. This reduces the size of the processed data and speeds up
encoding/decoding.
2023-08-03 23:07:16 +02:00
757f6ff166
minedmap: write info.json file with tilemap metadata
With this change, the new minedmap implementation can generate all
necessary data for the frontend to work.
2023-07-02 23:09:14 +02:00
dede21806c
Update dependencies 2023-07-01 23:05:39 +02:00
b66bdf5ce1
resource: implement water/foliage/grass color computation 2023-05-04 23:18:04 +02:00
26555f1745
src/world/layer: make BlockInfo fields public
There were left private by accident.
2023-03-03 20:36:09 +01:00
e6e1f55fe9
Use zlib-ng backend for flate2 by default
Still allow disabling the feature to avoid the cmake dependency.
2023-03-03 20:00:03 +01:00
21fd3a42ca
io: add storage helper
Use bincode+zstd to serialize data structures for temporary storage.
2023-02-28 21:59:45 +01:00
96736bd7ed
Replace DivRem trait with num-integer crate 2023-02-12 23:08:53 +01:00
a174d627cd
Cargo.toml: change license to MIT
The copy of the license text in the repository is dropped.
2023-02-12 23:03:12 +01:00
718ecf5909
resource: update block type code generator for Rust 2023-02-07 22:18:44 +01:00
daa188eb1d
io/region: use ChunkArray to parse region header
A layout of a ChunkArray::<u32> matches the binary format of the region
header.
2023-01-27 22:54:08 +01:00
28b22ce423
Introduce ChunkArray type
A generic array for per-chunk data, indexed by ChunkCoords.
2023-01-27 22:05:49 +01:00
5e96be3fda
Refactor logic from new dump tools into library crate 2023-01-25 21:42:16 +01:00
5a364e2434 Add new regiondump implemention 2023-01-25 21:41:34 +01:00
ddd78079dc Add new nbtdump util 2023-01-25 03:00:07 +01:00
40105aaccd Initial Rust setup 2023-01-25 00:06:27 +01:00