Implementing a new Sky Texture

Blender needs a new accurate sky generator for the environment world.
The current method in the Sky Texture Node is the sky model from Hosek-Wilkie implemented in 2012.
We propose a new model from Eric Bruneton which gives better results:

These are screenshots of the online demo they provide (it works in Linux with Chrome).
The features this sky method provides are:

  • Earth’s shadow inside the atmosphere
  • Height change (from ground to outer space)
  • Multiple Scattering (for more accurate colors)
  • Rayleigh and Mie Scattering, and Ozone Absorption
28 Likes

Really cool,
Did you check this addon:

I didn’t test it but it seem to give very good result. In any case that would be great to have a good physical sky integrated inside Blender without the need of addons since I hope Blender doesn’t become to much “addon-oriented” in the future… Even if its great that ppl can make money with Blender !

2 Likes

Thank you really much for your comment!
Yes, we have already checked this addon and as you said

I hope Blender doesn’t become to much “addon-oriented” in the future

we want to implement a completely opensource solution that everybody can use native in Blender.
We are waiting for some senior developer (@brecht) to decide if that project is worth it but, in my opinion, it is definitely worth it.

Thanks again

7 Likes

The examples look splendid, I’d be glad to have this sky model shipped with Blender. Currently I use a mixture of environments maps, sky texture and sun light, and always fiddle a bit to maek it all work together.

The functionality is welcome if you can implement a good quality integration.

There’s a few distinct steps here that can be done:

  • Add the new model into the existing Sky texture, without any volumetrics.
  • Add sun light component, ideally coupled to a sun light object for easy positioning.
  • Add volumetric scattering.

For scattering, this is not immediately compatible with our existing volume rendering which was mostly aimed at volumetric datasets where you step many small segments. For this kind of thing you probably want to integrate the volume scattering over a long distance, which is probably doable if you make the volume step length available to shaders.

4 Likes

I think for now we just limit the goal to your first thing :slight_smile: (add the new model into the existing Sky Texture)

5 Likes

This would be a good step forward! Especially with a sun light, which has always been missing from Blender’s sky texture.
Would your implementation work in Eevee as well? Without volumetrics, just the sky.

1 Like

We are aiming at the Cycles only for now, not even sure if we implement the sun disk in the sky since it would require a good multiple importance sampler (and as @brecht told me, Cycles still doesn’t). But a further implementation in Eevee could be made for sure if we succeed here.

5 Likes