Hillshading for Real-time Lighting
2026-09-01 , Conference Management Room2

MapLibre GL’s efficient "inline-shading" is ideal for standard maps. However, our Navara system’s dynamic day-night cycle, featuring constant light motion, exceeded standard coupled architectures. This necessitated a more flexible pipeline, leading us to implement a decoupled terrain normal generation approach for real-time, high-performance rendering.


The motivation for this technical restructuring came from a core feature in our Navara system:
the need for seamless, real-time day-night transitions.

In this session, we will share the journey of moving away from traditional "inline-shading"
(where pixel colors are computed in a single pass) to a deferred approach.

The core of the talk covers:

  • GPU-based Normal Generation: How we adapted the Navara engine to extract high-precision surface normals from raw DEM data on the fly.
  • Unified Scene Integration: How these persistent normals serve a dual purpose—not only powering dynamic hillshading but also providing the geometric foundation for G-buffer pipelines and improving the precision of vector draping (polygons/polylines) on rugged terrain.

Level of technical complexity: 3 - advanced Indicate what is (are) the open source project(s) essential in your talk:

MapLibre, Three.js

I make my conference contribution available under the CC BY 4.0 license. The conference contribution comprises the abstract, the text contribution for the conference proceedings, the presentation materials as well as the video recording and live transmission of the presentation:

Hao is a software engineer at Eukarya's Map Engine Group. He focuses on developing high-performance 3D terrain rendering solutions for the web, with a deep interest in real-time graphics, GPU optimization, and the evolution of open-source geospatial engines.