The Whale Road

  A Viking Long ship Environment from a first-person perspective.


Everything in this project is my work, minus a few Unreal starter content materials that I altered for my own purposes.

Needs and Constraints

I really wanted to develop my understanding of shaders and other effects, as well as demonstrate my competency in Unreal Engine 4.  There was little in the way of hard design choices to be made here, as I just wanted to make an interesting environment.


File Size:  970MB

Required Hardware:  Mouse, keyboard

Required Software:  Windows PC


    WASD to move
    Mouse position to look
    Space to jump

I knew from the beginning that I wanted to have a first person perspective, but this is demanding, as the level of detail had to be high.  One of the challenges that loomed large in particular was how I was going to texture large objects, namely the ship, in such a way that the materials were sufficiently good looking up close, but not too repetitive from a distance.  My approach was to set all UVs to a certain texil density, and and build tiling textures.  This meant that for most of the ship, there was not a normal map from a bake, so if I wanted some detail not in the tiling texture, I should model it.

My big problem that dogged me over the course of the project was the very limited functionality - how do you make a boat float?  As the water was done via a GPU material, I couldn't get the boat to figure out if it was above or below water, and apply forces accordingly.   Ultimately, I had to run the same math through both the material and the physics in parallel.

The ship itself was largely modeled on the Draken Harald Hårfagre, a gorgeous reconstruction built in Norway in 2012.


This was a project that drove me crazy while working on, largely because the learning curve was very steep.  But I'm very happy with the overall result, and it hugely deepened my knowledge of how shaders work.