In this tutorial, we will go through the steps of creating a realistic globe and clouds using only shaders. We will add some atmosphere to the horizon with a Volume and a Standard Volume shader. We will also light the scene using a Physical Sky connected to a Skydome light. This scene would make an ideal backdrop for a fictional film about some unfortunate astronauts, for example. Many thanks to Will MacNeil at MPC for providing the scene used for this tutorial.

You will need to download and use these high-resolution textures for use with this scene. Remember to convert the textures to .tx format before rendering.

The final scene file can be downloaded here.


The tutorial is broken up into the following stages:

Earth Shader

Clouds Shader

Atmosphere Volume


  • Begin by opening the start scene. This scene contains an object called Earth and Cloud. We will apply the respective shaders to these two objects.

Start scene containing Earth, Cloud and Atmosphere objects

  • Open the Render Setup window (Rendering ->Effects). Go to Environment, Background & Atmosphere under the Arnold Renderer tab. Change the Mode to Advanced. Change the Background Source to Custom Map and drag & drop the Physical Sky here. Disable Camera (Primary Rays) as we don't want to see the sky in outer space. Make sure Diffuse and Specular Reflections are enabled. You will need to change the direction of the sun in the Physical sky so that it reflects off the sea.

Physical sky connected to Background

Earth Shader

Hide the Cloud object for the time being. We will focus on the Earth shader first.

Diffuse

  • Assign a Standard Surface shader to the Earth object and rename it 'Earth'. Create a Bitmap and open the texture: Earth_Color.jpg. Connect it to the Base Color of the Earth shader. This will give us the basic diffuse color for the Earth.

'Earth Color' map connected to Base Color of Earth standard shader

Specular

Now we want to add a specular map to determine where the sea is reflective and where the land has no specularity.

  • Create a Bitmap and open the texture: Earth_Mask.jpg. This is the mask that will determine what is shiny (white) and what is matt (black). However, if we look at the image we can see it is the opposite of what we want. Connect the texture to the Specular Color of the Earth shader.

Land/sea shininess determined by 'Earth Mask' texture connected to specularity of Earth shader


Displacement

The Earth's surface is looking a little bit flat. We can add some elevation to the surface using the displacement map - 'Earth Elevation'.

  • Create a Bitmap and open the texture Earth Elevation. To see fine detail in the displacement we will need to add some subdivisions to the Earth geometry.
  • Select the Earth geometry and add an Arnold Properties modifier to it. Connect the bitmap to the Displacement Map. Under the Arnold Subdivision tab, change the Type to catclark and increase the Iterations to 4

Earth Displacement settings

Earth terrain is being displaced using 'Earth Elevation' texture (rollover image)


The final shader network for the Earth surface should look like the following image:


Final Earth shader network

Clouds Shader

The clouds shader is a little bit simpler to setup. We will use the clouds image and connect it to the Emission, Opacity, and Displacement of a Standard shader.

  • Create a Standard Surface shader for the clouds. Rename it to Clouds and assign it to the Cloud object.
  • Create a Bitmap and open the Cloud image. Connect the cloud image texture to the Opacity and Emission parameters of the Cloud Standard shader.
  • Increase the Emission Scale to around 1 or 2. This will determine how bright the clouds appear.
  • Now we need to repeat the steps for the Cloud object that we did for the Earth object for the Displacement of the clouds so that they look like they are floating over the Earth's surface. Select the Cloud geometry and add an Arnold Properties modifier to it. Connect the Clouds bitmap to the Displacement Map. Under the Arnold Subdivision tab, change the Type to catclark and increase the Iterations to 4.


Displacement, Opacity, and Emission of clouds driven by Clouds texture map


Using a Volume for the Atmosphere

Finally, we will create some atmosphere, visible on the horizon, using a volume.

  • Create a sphere. Scale it so that it covers the Earth object.

  • Increase its Step Size to 0.1 in the Arnold attributes.

  • Create a Standard Volume shader and assign it to the sphere. The sphere should now render as a volume.
  • Change the Emission Mode to Density and the Emission Color to a bright sky blue (horizon color).

Atmosphere rendered as a volume



That concludes this tutorial on how to realistically shade a globe. Finally, why not try keyframing the rotation of the cloud and Earth to create a fake time-lapse effect or animate an astronaut plummeting to their death?

  • No labels