Rendering the Sky, Sunsets, and Planets
L'auteur s'est inspiré d'une photo de la navette en orbite pour implémenter côté navigateur un shader d'atmospheric scattering visant à reproduire les couleurs du ciel et des couchers de soleil en temps réel. Il détaille une approche par raymarching qui échantillonne la densité atmosphérique et accumule la profondeur optique pour calculer la transmittance selon la diffusion Rayleigh et une fonction de phase associée. Le rendu est enrichi avec la diffusion Mie et l'absorption par l'ozone, et la lumière directe est traitée via une boucle interne de lightmarch pour obtenir des couchers de soleil réalistes en tenant compte de l'atténuation solaire. Ensuite l'effet est adapté en post‑processing pour reconstruire l'espace monde depuis le tampon de profondeur, rendre une enveloppe atmosphérique autour d'une planète (avec tests rayon‑sphère, profondeur logarithmique et gestion d'éclipses) et permettre de paramétrer d'autres atmosphères comme celle de Mars. Pour améliorer les performances l'auteur implémente enfin une approche par LUTs (transmittance, sky‑view, aerial perspective) qui pré‑calcule la diffusion et la transmittance pour remplacer les boucles coûteuses, tout en signalant des artefacts et des limites par rapport aux solutions de production.