Module building_blocks::prelude [−][src]
Structs
The key for a chunk at a particular level of detail.
A newtype wrapper for PointN
where each point represents exactly one chunk.
A value compressed with compression algorithm A
.
A two-tier chunk storage. The first tier is an LRU cache of uncompressed chunks. The second tier is a Slab
of compressed
chunks.
An object for reading from CompressibleChunkStorage
with only &self
. Easily construct one of these using the
CompressibleChunkStorage::reader
method.
An N-dimensional extent. This is mathematically the Cartesian product of a half-closed interval [a, b)
in each dimension.
You can also just think of it as an axis-aligned box with some shape and a minimum point. When doing queries against lattice
maps, this is the primary structure used to determine the bounds of your query.
Map-local coordinates.
A ChunkedOctreeSet
that indexes the chunks of a ChunkMap
. Useful for representing a clipmap.
Represents a single non-empty octant in the octree. Can be used for manual traversal by calling OctreeSet::get_child
.
A sparse set of voxel coordinates (3D integer points). Supports spatial queries.
A ChunkDownsampler
that just selects a single point from each 2x2x2
(assuming lod_delta=1
) region, ignoring the rest.
An N-dimensional point (where N=2 or N=3), which is usually just a primitive array like
[i32; 2]
or [i32; 3]
. It is most convenient to construct points of any dimension as:
A signed distance value in the range [-1.0, 1.0]
with 8 bits of precision.
A signed distance value in the range [-1.0, 1.0]
with 16 bits of precision.
A ChunkDownsampler
that takes the mean of each 2x2x2
region of a signed distance field. It also renormalizes the values
to lie in the range [-1.0, 1.0]
.
A simple format for serializing a collection of chunks. All chunks are serialized with bincode
, then compressed using some
BytesCompression
.
The Snappy compression algorithm. Uses a pure Rust implementation, making it suitable for use with the WASM target.
The most efficient coordinates for slice-backed lattice maps. A single number that translates directly to a slice offset.
A lattice map that delegates look-ups to a different lattice map, then transforms the result
using some Fn(In) -> Out
.
Enums
Traits
One piece of a chunked lattice map.
An object that knows how to construct chunks for a ChunkMap
.
Methods for reading chunks from storage.
Methods for writing chunks from storage.
An algorithm for:
1. compressing a specific type Data
into type Compressed
2. decompressing Compressed
back into Data
When a lattice map implements IndexedArray
, that means there is some underlying array with the location and shape dictated
by the extent.
Used in many generic algorithms to check if a voxel is considered empty.
A trait that bundles op traits that all PointN<N>
(and its components) should have.
A trait to facilitate the generic implementation of copy_extent
.
A trait to facilitate the generic implementation of copy_extent
.
Functions
Copy all points in extent
from the src
map to the dst
map.
Type Definitions
A 2-dimensional, 1-channel ChunkHashMap
.
A 2-dimensional, 2-channel ChunkHashMap
.
A 2-dimensional, 3-channel ChunkHashMap
.
A 2-dimensional, 4-channel ChunkHashMap
.
A 2-dimensional, 5-channel ChunkHashMap
.
A 2-dimensional, 6-channel ChunkHashMap
.
A 3-dimensional, 1-channel ChunkHashMap
.
A 3-dimensional, 2-channel ChunkHashMap
.
A 3-dimensional, 3-channel ChunkHashMap
.
A 3-dimensional, 4-channel ChunkHashMap
.
A 3-dimensional, 5-channel ChunkHashMap
.
A 3-dimensional, 6-channel ChunkHashMap
.
An N-dimensional, 1-channel ChunkHashMap
.
A 2-dimensional ChunkKey
.
A 3-dimensional ChunkKey
.
A ChunkMapBuilder
for Array2x1
chunks.
A ChunkMapBuilder
for Array3x1
chunks.
A ChunkMapBuilder
for ArrayNx1
chunks.
A ChunkMap
using CompressibleChunkStorage
as chunk storage.
A ChunkMap
backed by a CompressibleChunkStorageReader
.
A 2-dimensional extent with scalar type T
.
A 2-dimensional extent with scalar type f32
.
A 2-dimensional extent with scalar type i32
.
A 3-dimensional extent with scalar type T
.
A 3-dimensional extent with scalar type f32
.
A 3-dimensional extent with scalar type i32
.
A LocalCache
of 2D chunks.
A LocalCache
of 3D chunks.
A 2-dimensional point with scalar type T
.
A 2-dimensional point with scalar type f32
.
A 2-dimensional point with scalar type i32
.
A 3-dimensional point with scalar type T
.
A 3-dimensional point with scalar type f32
.
A 3-dimensional point with scalar type i32
.