top of page
+jAabN_edited.jpg

Surveyor

A short experiment into creating a map and compass navigation system

Project
  • Team Size: Solo

  • Role: Project Lead, Design, 3D Modeling, Programming

  • Tools: Unity, C#

  • Development Time: 2 weeks

  • Platform: PC

  • Download Link: itch.io

Intent

I wanted to create a first-person hiking game where the player must orient themselves in a foggy mountain range. I came across the idea while preparing for a journey along the Pennine Way. The player should feel like a navigator who is well and truly alone.

​

To achieve that goal I chose to use no UI elements or HUD. All information would have to be presented as part of a physicalized object. Players will have to navigate using real triangulation techniques and rely on their tools.  

Video
Features List
  • Compass:

    • A physicalized thing that the player can hold

    • Tilting the camera will make it react, keep the camera steady

  • ​Map:

    • A 1/36th scale topographical map of the game

    • Three objectives marked 

    • Draw lines to plot routes and measure distances

  • Fog: 

    • Obscures vision to about 30m when under the fog layer hanging at 200m

    • The fog layer omits the low peaks 

    • Players must plot routes through the valleys relying on their tools for navigation

Inspiration

These are the VDDs I whipped up. Short and to the point since I was the only one who would be working on the project. 

​

The original plan was to give the player a flash light and ask them to navigate up the mountain and then back to the boat. Two months before starting the project I had gone hiking up Mount Mansfield, VT to catch a sunset, while the sunset was beautiful I got caught in the shadow of the mountain. It was a harrowing experience navigating mountain woods in the dark. I wanted to recreate that experience of flickering a flashlight that is on its last ebbs of battery. 

​

However as the project evolved I found that the journey back was fairly boring and the game was not evolving into the experience I wished. I started to pivot the project into what would become the final design.

My photos:

Challenge | Making The Map

A major challenge I ran into while developing surveyor was how the player was going to view the map. Initially I figured I could just take a screenshot from above and just use that... however... 

Map.PNG

It looked bad. This wasn't going to work. 

​

I called in my good friend Amalia Russell to help sketch up something better. A map which was both accurate and visually appealing. 

Part 1 | How?

To make an accurate topographical map surveyors mark precise altitudes by hand and combine their results with aerial photographs to capture the contours of each mountain and hill.

 

In a game engine we can use a similar but significantly faster method. 

Layer Production.PNG

The first thing I did was stratify the level into many equally spaced layers. These planes could be used to mark out every 20 meters and make it easy to draw over.​​

Here you can see each layer:

Part 2 | Illustrating 

The final trace left us with this outline. 

image (1).png

Next we added color and water damage to give it some character.

​

The 200 meter line was dotted to show the layer where the fog settles.

 

Any peaks above the fog line have clear lines of sight to each other. 

​

This reduced the number of peaks that the player would have to keep track of and made it easier to find landmarks. 

image (3).png
image (3) path.png

While there is no strict path the player must follow I did make a rout to help ease them into each new mechanic.

 

The first objective they can find can't be missed. It's a clear focus point to help the player find where they are on the map. 

 

The second objective is less obvious. It's on the first high point the player comes to. However most players didn't realize this until they tried triangulating their position. 

​

The last objective requires the player to engage with all the mechanics of the game. While possible to stumble into it, most play testers who were wandering would find themselves on other peaks. Even if the player misses the objective there is a mountain there to catch them and let them get their bearings. 

MapMaking.PNG

Since the north pole was a physical point I adjusted the map for the magnetic deviation. â€‹North was about 18.435° off so I rotated it counter clockwise in engine to make things a bit easier for the player. 

Part 3 | Engine Work

Using Unity's decal projector I was able to apply the map texture onto a quad. Blending the quad's alpha with the map decal meant that I could use a variety of base textures and cutouts. 

To get the map and compass smoothly opening and closing I used a combination of tweens and the Unity Animator.

 

When the map opens an event fires calling the compass to change it's parent to the map anchor.

 

Tweening the compass to it's local origin will always smoothly return it to center of the anchor. 

​

It looked good!

​

It also had the added benefit of remembering where the player last had the compass open.

Map gif.gif
image.png
surveyor.png
bottom of page