Skip to main content

VIVIA โ€” Performance

Benchmarksโ€‹

OperationTimeNotes
Frame target16.6 ms60 FPS
AI forward pass0.01 msPer prediction
AI training epoch5-10 ms100 samples
Chunk generation~2 msAsync, rayon-parallel
GLB decimation~50 msOnce, cached
Mesh cache load0.3 msFrom disk
Cold start2.4 sIncluding mesh bake
Cached start0.3 sMeshes on disk

Memoryโ€‹

ComponentSize
MeMLP model~14 KB JSON
Per chunk~256 KB (16ร—512ร—16 ร— 1 byte/block)
Texture atlas~4 MB
GLB models230-285 KB each (cached)
Instance buffer2048 cubes ร— 64 bytes = 128 KB
AI mesh buffer256 models ร— variable

GPUโ€‹

  • Instanced rendering โ€” one draw call per shape per chunk
  • No per-frame allocations โ€” hot path is allocation-free
  • Deterministic cache โ€” GLB meshes cached by content hash
  • Bilinear upscale โ€” texture filtering for close-up detail
  • Low-end auto-detect โ€” reduced render radius for old GPUs

Scalabilityโ€‹

MetricValue
Render radius4-8 chunks (configurable)
Max creatures24 animals + 10 hostiles per frame
Max instances2048 cubes + 256 AI meshes
Chunk height512 blocks (double standard)
World sizeUnlimited (procedural)