Skip to content

Luna-Flow/geometry3d

This documentation tracks the current repository baseline for v0.5.1.

The current baseline includes the Luna-Flow template-style maintenance scripts and compatibility with Luna-Flow/linear-algebra@0.4.2.

Repository Positioning

geometry3d is a compact MoonBit 3D geometry foundation built on Luna-Flow/linear-algebra. It separates core geometry, camera/view math, frontend draw-list generation, and concrete renderer backends.

Documentation Layout

  • README.md for the package narrative and release baseline.
  • doc_standard.md for the documentation contract.
  • Subsystem folders with api.md, tutorial.md, and design.md.

Subsystem Overview

  • core: Mesh, quad faces, vector helpers, normals, visibility, and 4x4 TRS transforms.
  • view: camera, look_at, viewport, perspective projection, and orthographic projection.
  • frontend: Scene, RenderView, and backend-neutral DrawList.
  • backend-tui: TUI frame buffer, background patterns, Z-buffer, terminal y-scale, and rasterization.
  • backend-canvas: browser Canvas 2D output using the frontend software Z-buffer.
  • backend-gsap: SVG polygon output with painter ordering and GSAP playback control.
  • demo: terminal demos and export helpers; demo_canvas and demo_gsap provide browser demos.

Documentation Entry Points