CoolFace
Apppublic

Matrix-Corp/Matrix-Voxel

sourceHugging Facecc-by-nc-nd-4.0updated 7mo agoView on Hugging Face
0likes
App README

Matrix Voxel โ€” Full Architecture & Planning Document

3D Generation Model Family | Matrix.Corp


Family Overview

Matrix Voxel is Matrix.Corp's 3D generation family. Five models sharing a common flow-matching backbone, each with task-specific decoder heads. Four specialist models are open source; one unified all-in-one (Voxel Prime) is closed source and API-only.

ModelTaskOutput FormatsSourceHardwareStatus
Voxel AtlasWorld / environment generationVoxel grids, OBJ scenes, USD stages๐ŸŸข Open SourceA100 40GB๐Ÿ”ด Planned
Voxel Forge3D mesh / asset generationOBJ, GLB, FBX, USDZ๐ŸŸข Open SourceA100 40GB๐Ÿ”ด Planned
Voxel Cast3D printable model generationSTL, OBJ (watertight), STEP๐ŸŸข Open SourceA100 40GB๐Ÿ”ด Planned
Voxel LensNeRF / Gaussian Splatting scenes.ply (3DGS), NeRF weights, MP4 render๐ŸŸข Open SourceA100 40GB๐Ÿ”ด Planned
Voxel PrimeAll-in-one unified generationAll of the above๐ŸŸฃ Closed SourceAPI Only๐Ÿ”ด Planned

Input Modalities (All Models)

Every Voxel model accepts any combination of:

InputDescriptionEncoder
Text promptNatural language description of desired 3D outputCLIP-ViT-L / T5-XXL
Single imageReference image โ†’ 3D liftDINOv2 + custom depth encoder
Multi-view images2โ€“12 images from different anglesMulti-view transformer encoder
VideoExtracts frames, infers 3D from motionTemporal encoder (Video-MAE lineage)
3D modelExisting mesh/point cloud as conditioningPointNet++ encoder

All inputs projected to a shared 1024-dim conditioning embedding space before entering the backbone.


Core Architecture โ€” Shared Flow Matching Backbone

Why Flow Matching?

Flow matching (Lipman et al. 2022, extended by Stable Diffusion 3 / FLUX lineage) learns a direct vector field from noise โ†’ data. Faster than DDPM diffusion (fewer inference steps, typically 20โ€“50 vs 1000), more stable training, better mode coverage. State of the art for generative models as of 2025โ€“2026.

3D Representation โ€” Triplane + Latent Voxel Grid

All Voxel models operate in a shared latent 3D space:

  • โ€”Triplane representation: three axis-aligned feature planes (XY, XZ, YZ), each 256ร—256ร—32 channels
  • โ€”Any 3D point queried by projecting onto all 3 planes and summing features
  • โ€”Compact (3 ร— 256 ร— 256 ร— 32 = ~6M latent values) yet expressive
  • โ€”Flow matching operates on this triplane latent space, not raw 3D points
  • โ€”Decoder heads decode triplane to task-specific output format

Backbone Architecture

VoxelBackbone
โ”œโ”€โ”€ Input Encoder (multimodal conditioning)
โ”‚   โ”œโ”€โ”€ TextEncoder         โ€” T5-XXL + CLIP-ViT-L, projected to 1024-dim
โ”‚   โ”œโ”€โ”€ ImageEncoder        โ€” DINOv2-L, projected to 1024-dim  
โ”‚   โ”œโ”€โ”€ MultiViewEncoder    โ€” custom transformer over N views
โ”‚   โ”œโ”€โ”€ VideoEncoder        โ€” Video-MAE, temporal pooling โ†’ 1024-dim
โ”‚   โ””โ”€โ”€ PointCloudEncoder   โ€” PointNet++, global + local features โ†’ 1024-dim
โ”‚
โ”œโ”€โ”€ Conditioning Fusion
โ”‚   โ””โ”€โ”€ CrossModalAttention โ€” fuses all active input modalities
โ”‚
โ”œโ”€โ”€ Flow Matching Transformer (DiT-style)
โ”‚   โ”œโ”€โ”€ 24 transformer blocks
โ”‚   โ”œโ”€โ”€ Hidden dim: 1536
โ”‚   โ”œโ”€โ”€ Heads: 24
โ”‚   โ”œโ”€โ”€ Conditioning: AdaLN-Zero (timestep + conditioning signal)
โ”‚   โ”œโ”€โ”€ 3D RoPE positional encoding for triplane tokens
โ”‚   โ””โ”€โ”€ ~2.3B parameters
โ”‚
โ””โ”€โ”€ Triplane Decoder (shared across all specialist models)
    โ””โ”€โ”€ Outputs: triplane feature tensor (3 ร— 256 ร— 256 ร— 32)

Flow Matching Training

  • โ€”Learn vector field vฮธ(xt, t, c) where x_t is noisy triplane, c is conditioning
  • โ€”Optimal transport flow: straight paths from noise โ†’ data (better than DDPM curved paths)
  • โ€”Inference: 20โ€“50 NFE (neural function evaluations) โ€” fast on A100
  • โ€”Classifier-free guidance: unconditional dropout 10% during training
  • โ€”Guidance scale 5.0โ€“10.0 at inference

Task-Specific Decoder Heads

Each specialist model adds a decoder head on top of the shared triplane output.


Voxel Atlas โ€” World Generation Decoder

Task: Generate full 3D environments and worlds โ€” terrain, buildings, vegetation, interior spaces.

Output formats:

  • โ€”Voxel grids (.vox, Magica Voxel format) โ€” for Minecraft-style worlds
  • โ€”OBJ scene (multiple meshes with materials) โ€” for Unity/Unreal environments
  • โ€”USD stage (.usd) โ€” industry standard scene format

Decoder head:

TriplaneAtlasDecoder
โ”œโ”€โ”€ Scene Layout Transformer
โ”‚   โ”œโ”€โ”€ Divides space into semantic regions (terrain, structures, vegetation, sky)
โ”‚   โ””โ”€โ”€ 6-layer transformer over 32ร—32 spatial grid of scene tokens
โ”œโ”€โ”€ Region-wise NeRF decoder (per semantic region)
โ”‚   โ””โ”€โ”€ MLP: 3D coords + triplane features โ†’ density + RGB + semantic label
โ”œโ”€โ”€ Marching Cubes extractor โ†’ raw mesh per region
โ”œโ”€โ”€ Scene graph assembler โ†’ parent-child relationships between objects
โ”œโ”€โ”€ Voxelizer (for .vox output) โ†’ discretizes to user-specified resolution
โ””โ”€โ”€ USD exporter โ†’ full scene hierarchy with lighting + materials

Special modules:

  • โ€”Infinite world tiling: generate seamless adjacent chunks that stitch together
  • โ€”Biome-aware generation: desert, forest, urban, underwater, space, fantasy
  • โ€”LOD generator: auto-generates 4 levels of detail per scene object
  • โ€”Lighting estimator: infers plausible sun/sky lighting from scene content

Typical generation sizes:

  • โ€”Small scene: 64ร—64ร—64 voxels or ~500mยฒ OBJ scene โ€” ~8 seconds on A100
  • โ€”Large world chunk: 256ร—256ร—128 voxels โ€” ~35 seconds on A100

Voxel Forge โ€” Mesh / Asset Generation Decoder

Task: Generate clean, game-ready 3D assets โ€” characters, objects, props, vehicles, architecture.

Output formats:

  • โ€”OBJ + MTL (universal)
  • โ€”GLB/GLTF (web & real-time)
  • โ€”FBX (game engine standard)
  • โ€”USDZ (Apple AR)

Decoder head:

TriplaneForgeDec oder
โ”œโ”€โ”€ Occupancy Network decoder
โ”‚   โ””โ”€โ”€ MLP: 3D point + triplane โ†’ occupancy probability
โ”œโ”€โ”€ Differentiable Marching Cubes โ†’ initial raw mesh
โ”œโ”€โ”€ Mesh Refinement Network
โ”‚   โ”œโ”€โ”€ Graph neural network over mesh vertices/edges
โ”‚   โ”œโ”€โ”€ 8 message-passing rounds
โ”‚   โ””โ”€โ”€ Predicts vertex position offsets โ†’ clean topology
โ”œโ”€โ”€ UV Unwrapper (learned, SeamlessUV lineage)
โ”œโ”€โ”€ Texture Diffusion Head
โ”‚   โ”œโ”€โ”€ 2D flow matching in UV space
โ”‚   โ”œโ”€โ”€ Albedo + roughness + metallic + normal maps
โ”‚   โ””โ”€โ”€ 1024ร—1024 or 2048ร—2048 texture atlas
โ””โ”€โ”€ LOD Generator โ†’ 4 polycount levels (100% / 50% / 25% / 10%)

Special modules:

  • โ€”Topology optimizer: enforces quad-dominant topology for animation rigs
  • โ€”Symmetry enforcer: optional bilateral symmetry for characters/vehicles
  • โ€”Scale normalizer: outputs at real-world scale (meters) with unit metadata
  • โ€”Material classifier: auto-tags materials (metal, wood, fabric, glass, etc.)
  • โ€”Animation-ready flag: detects and preserves edge loops needed for rigging

Polygon counts:

  • โ€”Low-poly asset: 500โ€“5K triangles โ€” ~6 seconds on A100
  • โ€”Mid-poly asset: 5Kโ€“50K triangles โ€” ~15 seconds on A100
  • โ€”High-poly asset: 50Kโ€“500K triangles โ€” ~45 seconds on A100

Voxel Cast โ€” 3D Printable Generation Decoder

Task: Generate physically valid, printable 3D models. Watertight, manifold, structurally sound.

Output formats:

  • โ€”STL (universal printing format)
  • โ€”OBJ (watertight)
  • โ€”STEP (CAD-compatible, parametric)
  • โ€”3MF (modern printing format with material data)

Decoder head:

TriplaneCastDecoder
โ”œโ”€โ”€ SDF (Signed Distance Field) decoder
โ”‚   โ””โ”€โ”€ MLP: 3D point + triplane โ†’ signed distance value
โ”œโ”€โ”€ SDF โ†’ Watertight Mesh (dual marching cubes, no holes guaranteed)
โ”œโ”€โ”€ Printability Validator
โ”‚   โ”œโ”€โ”€ Wall thickness checker (min 1.2mm enforced)
โ”‚   โ”œโ”€โ”€ Overhang analyzer (>45ยฐ flagged + support detection)
โ”‚   โ”œโ”€โ”€ Manifold checker + auto-repair
โ”‚   โ””โ”€โ”€ Volume/surface area calculator
โ”œโ”€โ”€ Support Structure Generator (optional)
โ”‚   โ””โ”€โ”€ Generates minimal support trees for FDM printing
โ”œโ”€โ”€ STEP Converter (via Open CASCADE bindings)
โ””โ”€โ”€ Slicer Preview Renderer (preview only, not full slicer)

Special modules:

  • โ€”Structural stress analyzer: basic FEA simulation to detect weak points
  • โ€”Hollowing engine: auto-hollows solid objects with configurable wall thickness + drain holes
  • โ€”Interlocking part splitter: splits large objects into printable parts with snap-fit joints
  • โ€”Material suggester: recommends PLA / PETG / resin based on geometry complexity
  • โ€”Scale validator: ensures object is printable at specified scale on common bed sizes (Bambu, Prusa, Ender)

Validation requirements (all Cast outputs must pass):

  • โ€”Zero non-manifold edges
  • โ€”Zero self-intersections
  • โ€”Minimum wall thickness โ‰ฅ 1.2mm at requested scale
  • โ€”Watertight (no open boundaries)

Voxel Lens โ€” NeRF / Gaussian Splatting Decoder

Task: Generate photorealistic 3D scenes represented as Neural Radiance Fields or 3D Gaussian Splats โ€” primarily for visualization, VR/AR, and cinematic rendering.

Output formats:

  • โ€”.ply (3D Gaussian Splatting โ€” compatible with standard 3DGS viewers)
  • โ€”NeRF weights (Instant-NGP / Nerfstudio compatible)
  • โ€”MP4 render (pre-rendered orbital video)
  • โ€”Depth maps + normal maps (per-view, for downstream use)

Decoder head:

TriplaneLensDecoder
โ”œโ”€โ”€ Gaussian Parameter Decoder
โ”‚   โ”œโ”€โ”€ Samples 3D Gaussian centers from triplane density
โ”‚   โ”œโ”€โ”€ Per-Gaussian: position (3), rotation (4 quaternion), scale (3),
โ”‚   โ”‚   opacity (1), spherical harmonics coefficients (48) โ†’ color
โ”‚   โ””โ”€โ”€ Targets: 500Kโ€“3M Gaussians per scene
โ”œโ”€โ”€ Gaussian Densification Module
โ”‚   โ”œโ”€โ”€ Adaptive densification: split/clone in high-gradient regions
โ”‚   โ””โ”€โ”€ Pruning: remove low-opacity Gaussians
โ”œโ”€โ”€ NeRF branch (parallel)
โ”‚   โ”œโ”€โ”€ Hash-grid encoder (Instant-NGP style)
โ”‚   โ””โ”€โ”€ Tiny MLP: encoded position โ†’ density + color
โ”œโ”€โ”€ Rasterizer (differentiable 3DGS rasterizer)
โ”‚   โ””โ”€โ”€ Used during training for photometric loss
โ””โ”€โ”€ Novel View Synthesizer
    โ””โ”€โ”€ Renders arbitrary camera trajectories for MP4 export

Special modules:

  • โ€”Lighting decomposition: separates scene into albedo + illumination components
  • โ€”Dynamic scene support: temporal Gaussian sequences for animated scenes (from video input)
  • โ€”Background/foreground separator: isolates subject from environment
  • โ€”Camera trajectory planner: auto-generates cinematic orbital/fly-through paths
  • โ€”Compression module: reduces 3DGS file size by 60โ€“80% with minimal quality loss

Generation modes:

  • โ€”Object-centric: single object, orbital views โ€” ~12 seconds on A100
  • โ€”Indoor scene: full room with lighting โ€” ~40 seconds on A100
  • โ€”Outdoor scene: landscape or street โ€” ~90 seconds on A100

Voxel Prime โ€” Closed Source All-in-One

Access: API only. Not open source. Weights never distributed.

Voxel Prime contains all four decoder heads simultaneously, plus:

Additional Prime-only modules:

  • โ€”Cross-task consistency: ensures Atlas world + Forge assets + Lens scene all match when generated together
  • โ€”Scene population engine: generates a world (Atlas) then auto-populates it with assets (Forge)
  • โ€”Pipeline orchestrator: chains Atlas โ†’ Forge โ†’ Cast โ†’ Lens in one API call
  • โ€”Photorealistic texture upscaler: 4ร— super-resolution on all generated textures
  • โ€”Style transfer module: apply artistic style (e.g. "Studio Ghibli", "cyberpunk", "brutalist architecture") across all output types
  • โ€”Iterative refinement: text-guided editing of already-generated 3D content

API endpoint:

python
POST /v1/voxel/generate
{
  "prompt": "A medieval castle on a cliff at sunset",
  "output_types": ["world", "mesh", "nerf"],  # any combination
  "inputs": {
    "image": "base64...",       # optional reference image
    "multiview": ["base64..."], # optional multi-view images
    "video": "base64...",       # optional video
    "model": "base64..."        # optional existing 3D model
  },
  "settings": {
    "quality": "high",          # draft | standard | high
    "style": "realistic",       # realistic | stylized | low-poly | ...
    "scale_meters": 100.0,      # real-world scale
    "symmetry": false,
    "printable": false
  }
}

Shared Custom Modules (All Models)

#ModuleDescription
1Multi-Modal Conditioning FusionCrossModalAttention over all active input types
23D RoPE EncoderRoPE adapted for triplane 3D spatial positions
3Geometry Quality ScorerRates generated geometry quality [0โ€“1] before output
4Semantic Label HeadPer-voxel/vertex semantic class (wall, floor, tree, etc.)
5Scale & Unit ManagerEnforces consistent real-world scale across all outputs
6Material Property HeadPredicts PBR material properties (roughness, metallic, IOR)
7Confidence & Uncertainty HeadPer-region generation confidence โ€” flags uncertain areas
8Prompt Adherence ScorerCLIP-based score: how well output matches text prompt
9Multi-Resolution DecoderGenerates at 64ยณ โ†’ 128ยณ โ†’ 256ยณ coarse-to-fine
10Style Embedding ModuleEncodes style reference images into style conditioning vector

Training Data Plan

DatasetContentUsed by
ShapeNet (55K models)Common 3D objectsForge, Cast
Objaverse (800K+ models)Diverse 3D assetsForge, Cast, Lens
Objaverse-XL (10M+ objects)Massive scaleAll
ScanNet / ScanNet++Indoor 3D scansAtlas, Lens
KITTI / nuScenesOutdoor 3D scenesAtlas, Lens
ABO (Amazon Berkeley Objects)Product meshes + materialsForge
Thingiverse (printable models)3D printable STLsCast
Polycam scansReal-world 3DGS/NeRFLens
Synthetic renders (generated)Multi-view rendered imagesAll
Text-3D pairs (synthetic)GPT-4o generated descriptions of ObjaverseAll

Parameter Estimates

ModelBackboneDecoder HeadTotalVRAM (BF16)
Voxel Atlas2.3B~400M~2.7B~22GB
Voxel Forge2.3B~350M~2.65B~21GB
Voxel Cast2.3B~200M~2.5B~20GB
Voxel Lens2.3B~500M~2.8B~22GB
Voxel Prime2.3B~1.4B (all 4)~3.7B~30GB

All fit on A100 40GB in BF16. INT8 quantization brings all under 15GB (consumer 4090 viable).


Training Strategy

Phase 1 โ€” Backbone Pre-training

  • โ€”Train shared backbone on Objaverse-XL triplane reconstructions
  • โ€”Learn general 3D structure without task-specific heads
  • โ€”Context: text + single image conditioning only
  • โ€”100K steps, A100 cluster

Phase 2 โ€” Decoder Head Training (parallel)

  • โ€”Freeze backbone, train each decoder head independently
  • โ€”Atlas: ScanNet + synthetic world data
  • โ€”Forge: ShapeNet + Objaverse + texture data
  • โ€”Cast: Thingiverse + watertight synthetic meshes
  • โ€”Lens: Polycam + synthetic multi-view renders
  • โ€”50K steps each

Phase 3 โ€” Joint Fine-tuning

  • โ€”Unfreeze backbone, fine-tune end-to-end per specialist model
  • โ€”Add all input modalities (video, multi-view, point cloud)
  • โ€”30K steps each

Phase 4 โ€” Prime Training

  • โ€”Initialize from jointly fine-tuned backbone
  • โ€”Train all decoder heads simultaneously
  • โ€”Cross-task consistency losses
  • โ€”Prime-only module training (pipeline orchestrator, style transfer)
  • โ€”50K steps

HuggingFace Plan

Matrix-Corp/Voxel-Atlas-V1    โ€” open source
Matrix-Corp/Voxel-Forge-V1    โ€” open source
Matrix-Corp/Voxel-Cast-V1     โ€” open source
Matrix-Corp/Voxel-Lens-V1     โ€” open source
Matrix-Corp/Voxel-Prime-V1    โ€” closed source, API only (card only, no weights)

Collection: Matrix-Corp/voxel-v1


Status

  • โ€”๐Ÿ”ด Planned โ€” Architecture specification complete
  • โ€”Backbone design finalized
  • โ€”Decoder head designs finalized
  • โ€”Training data sourcing: TBD
  • โ€”Compute requirements: significant (A100 cluster for training)
  • โ€”Timeline: TBD