iToverDose/Startups· 2 MAY 2026 · 10:00

How photometric data powers real-time light pollution simulators in your browser

A new browser tool simulates urban lighting with real photometric data, rendering streetlights and sky glow with precision. No backend runs everything client-side in Rust and WASM.

Hacker News3 min read0 Comments

A Rust-powered library and browser-based ecosystem now lets you simulate light pollution in real time, using accurate photometric data without any server-side processing.

The open-source project loads standard luminaire files—such as IES LM-63 or LDT/EULUMDAT—and renders an urban scene in Bevy, a Rust-based 3D engine. Every streetlight’s behavior, including its contribution to sky glow, is driven directly by the luminaire’s intensity distribution. Adjustments to uplight percentages update the sky glow grade live, with no approximations.

For instance, swapping to a full-cutoff fixture transforms a sky glow rating from F (Severe) to A (Excellent). The visual impact extends beyond the sky: buildings in the scene also reflect the change, with light distribution adjusting precisely to fixture specifications.

Simulating urban lighting with real photometric data

The tool uses real-world photometric standards to drive its simulations. Design calculations can be performed against multiple regional standards, including:

  • EN 13201 (Europe)
  • ANSI/IES RP-8 (North America)
  • CJJ 45 (China)
  • IES-IDA Model Lighting Ordinance (MLO)

These calculations are not theoretical; they load actual luminaire files, such as those from Oxytech or ATLA-S001, and apply real-world lighting standards to urban scenes.

For example, the Skyglow Analysis demo incorporates a real LDT file into a Bevy scene. The scene is derived from a Khronos Bistro test asset, but unlike a generic simulation, the luminaire’s intensity distribution drives the streetlight rendering directly—no adjustments for artistic purposes.

Client-side architecture: Rust, Bevy, and WASM

The entire ecosystem operates client-side, eliminating backend dependencies. The architecture relies on multiple Rust crates, including eulumdat-rs, which handle photometric formats natively.

Core components include:

  • A Rust library (~20 crates) for parsing photometric data into workable formats
  • Bevy for rendering urban scenes in 3D
  • WebAssembly (WASM) for deploying simulations directly in browsers

No server-side code is involved. The simulation runs entirely in the browser, with every calculation and rendering update processed locally.

For instance, the integration with Bevy required roughly a thousand lines of new code layered on top of the existing photometric library. The goal was to enable real-time adjustments to lighting fixtures with live updates to both the scene and sky glow ratings.

Feedback requested on atmospheric models and standards

The current atmospheric scattering model in the tool uses single-scattering Rayleigh+Mie. While this approach may be sufficient for many light pollution simulations, the developer seeks community input on whether it should be expanded to multi-scattering models for increased accuracy.

Additionally, the tool relies on the Bistro test scene for visual validation. However, this scene is not a controlled environment typical of real-world lighting evaluations. The developer asks if anyone knows of a public urban geometry asset that better represents typical road-lighting scenarios.

Regarding standards implementation, the developer notes that the CJJ 45 implementation—China’s national road lighting standard—was reverse-engineered from translated PDFs. Primary-source experience with this standard would provide valuable validation.

The open-source project and related Rust crates are available on GitHub and Crates.io under the name eulumdat.

Looking ahead: open standards and community validation

As light pollution simulators become more accessible, tools that rely on open standards and real photometric data will likely drive adoption in urban planning and lighting design communities.

The developer’s request for feedback highlights the importance of community validation in expanding the tool’s capabilities—whether through improved atmospheric models or verified implementations of regional standards.

With ongoing development and community input, the browser-based simulator could evolve into a standard reference tool for evaluating and mitigating light pollution in real urban environments.

AI summary

Gerçek fotometrik verileri kullanarak tarayıcı tabanlı bir ışık kirliliği simülatörü oluşturun ve kentsel aydınlatmanın etkilerini keşfedin.

Comments

00
LEAVE A COMMENT
ID #GZM6AT

0 / 1200 CHARACTERS

Human check

7 + 8 = ?

Will appear after editor review

Moderation · Spam protection active

No approved comments yet. Be first.