Journey Sand Rendering

OMG those shining sands

Posted by Robin 升升 on June 30, 2018

Journey is always one of my favorite games.



I’m using a procedural generated terrain using perlin noise and vertex control. Link to my another article. it’s just some hills with no detail.

Diffuse Color

According to Journey’s GDC Talk, they are using a function called OrenNayar.

Normal map

Google Sand texture, get two sand texture in macro view. Modify them into two different direction.

Google sand texture, get one sand texture in micro view.

By calculation normal vector, we can distribute two macro normal map on our terrain.


For Specular reflection, I use Blinn model. I create 3 different layers of specular reflection and mix them to make the terrain smoother.

For more detail and make it more grainy, I add a noise map for reflection.


I use Unity post-processing stack. Using bloom and Color grading to make the visual more Journey-like.