Skip to main content

Crate roxlap_formats

Crate roxlap_formats 

Source
Expand description

Voxlap on-disk formats and data manipulation.

New to roxlap? The roxlap book is the guide — its asset-pipeline chapter tours every format here; this page is the API reference.

Parsers for .vxl (heightmap + slab voxel columns), .kv6 / .kvx (sprite voxel data), and .kfa (kv6 transform / animation). Lands across the R2.* sub-substages of PORTING-RUST.md:

  • R2.1: .kvx
  • R2.2: .kv6
  • R2.3: .vxl
  • R2.4: .kfa

edit hosts voxel-edit primitives (delslab/insslab/expandrle/ compilerle/ScumCtx) and high-level wrappers (set_spans, set_cube, set_sphere, set_rect). They live with the data they manipulate; rendering stays in roxlap-core.

Re-exports§

pub use color::OverlayColor;
pub use color::Rgb;
pub use color::VoxColor;
pub use material::material_for_color;
pub use material::BlendMode;
pub use material::Material;
pub use material::MaterialTable;
pub use palette::Rgb6;

Modules§

character
Rigged-character container (.rkc) — meshes + skeleton + clips, the on-disk form of a complete animated voxel character. Built on kfa / kv6 / sprite. .rkc rigged-character container — the on-disk form of a complete animated voxel character (meshes + skeleton + clips).
color
QE-B6 — the packed-colour newtype family.
edit
Voxel-edit primitives: column z-range buffer manipulation.
equivec
Voxlap’s univec[256] surface-normal direction table + the normal → dir quantiser (equivec::nearest_dir). Lives here (not roxlap-core) so kv6 model builders can fill per-voxel dir without a circular dependency; roxlap-core re-exports it. Voxlap’s univec[256] / iunivec[256][4] Fibonacci-spiral sphere direction tables.
kfa
.kfa kv6 hinge / animation transform data.
kv6
.kv6 voxel-sprite format (Voxlap voxel sprites).
kvx
.kvx voxel-sprite format (Build-engine voxel sprites).
material
Voxel materials — per-voxel opacity + blend mode (alpha / additive) for transparent voxels (smoke, glass, water, spell glows). See material
palette
Shared 6-bit-per-channel palette types used by .kvx and .kv6.
sprite
KV6 sprite — a parsed Kv6 paired with a world-space pose.
vox
MagicaVoxel .vox importer (QE.6a) — models + palette → kv6::Kv6 sprite models. The bridge from the industry-standard voxel editor. MagicaVoxel .vox importer (QE.6a) — the industry-standard voxel authoring format, hand-parsed in the house style (shared Cursor, per-format ParseError, no external decoder deps).
voxel_clip
Animated voxel-sprite clips (.rvc) — keyframe + diff “GIF/MP4 for voxel models” for effects (flame, spells). Frames use the GPU sprite model’s dense-column layout; see voxel_clip + PORTING-VOXEL-CLIP.md. Animated voxel-sprite clips (.rvc) — a “GIF/MP4 for voxel models”.
vxl
.vxl voxel-map format (Voxlap world / heightmap + slab columns).
xform
TRS bone transform + quaternion, for rich skeletal animation.