GLDF (Global Lighting Data Format) viewer and library

⚓ Rust    📅 2025-12-15    👤 surdeus    👁️ 1      

surdeus

gldf-rs is an open-source Rust library and viewer for GLDF files - the open standard for exchanging luminaire data in the lighting industry.

Screenshot 2025-12-15 at 10.05.49

Architecture: gldf-rs is a cargo workspace that brings together my other lighting crates:

  • eulumdat-rs - Parses EULUMDAT/IES photometric files and provides light distribution interpolation (WASM demo)
  • l3d-rs - Parses L3D (Luminaire 3D) geometry format with light emitting surfaces

Together they enable full GLDF support: container parsing, photometric visualization, and 3D luminaire rendering.

Bevy 3D Scene Viewer: Some highlight is the interactive 3D scene viewer built with Bevy, featuring:

  • Photometric light rendering - Visualizes actual light distribution with realistic beam angles, intensity falloff, and luminous flux
  • L3D luminaire geometry - Renders the 3D model including housing, reflectors, and light emitting surfaces (LES)
  • Accurate light emission - Photometric data is applied from the correct emission points defined in the L3D format

Cross-platform support:

  • Desktop - Native GUI using egui
  • Web - WASM build with Bevy for 3D rendering
  • Python - PyPI package via pyo3 (pip install gldf-rs)

Live demo: https://gldf.icu

GitHub:

Feedback and contributions welcome!

1 post - 1 participant

Read full topic

🏷️ Rust_feed