Back to webGL. A realtime visualization of the moon’s current phase based on data from BurningSoul’s Moon API. mesh created and UV mapped in Blender using open source height and diffuse maps. The work was fairly straightforward, except nailing the right lighting, which ended up happening surprisingly with THREE.PointLight(), since it produced far less artifacts than THREE.DirectionalLight(). Exact lighting settings could be further tweaked but as things stand, a fairly faithful representation of full, new, waxing and waning moons is provided, with varying angles and intensity degrees to mimic what’s actually observed from earth.
Interesting takeaway which merits further research: while the moon’s face stays constant due to tidal locking, a quick google search demonstrates that the moon’s face actually rotates (around its center axis facing earth) quite a bit! It’s absolutely not uniform anytime, everywhere.
This was a fun project!