Devblog
Planar Reflections and Patrol Boats

Planar Reflections and Patrol Boats

One of the chapters in the first episode has you playing a harbour patrol police. He’s vehicle is a patrol boat and it will be used in the scene. I had some spare time and I decided to model this vessel.

Modeling a Boston Whaler Challenger 27

After a bit of resource gathering I found out that one fitting boat used by NYPD in 1990 was called Boston Whaler Challenger 27 from 1988.

The Patrol Boat in Modo.

I spent a few hours modelling this boat during the past few days, I only used my trackpad on my 13” laptop and the experience was not great. But I got the small boat done!

Only after looking at the boat in game I really really started to miss actual reflections on the water surface. So I begun to search online for planar reflections for Unity’s Universal Render Pipeline.

Planar reflections

At first, I tried putting in a flipped camera that would render to a render texture. It was ok, but had a few major drawbacks: the reflection would not get clipped at the water plane, but it would just be a flipped version of the scene overlaid on top.

The ill-fated mirrored camera trick.

I scrapped this idea and went searching for a better solution. I found a GitHub repo that had a pretty nice planar reflection tool. It required some experimental unity packages and kept throwing nasty looking errors, so I opted instead to purchase an URP compatible planar reflection asset from the Unity Asset Store.

https://assetstore.unity.com/packages/vfx/shaders/fast-mobile-planar-reflection-urp-vr-ar-lwrp-142801

Patrol boat on my latest water shader with reflections!

This seemed fine. The test scene loaded up and ran great. Reflections worked perfectly and seemed fast. The only problem was that the shaders it used were HLSL and I needed to merge the planar reflection with my pre-existing shader graph created custom water.

Reflective water in the tanker scene.

Luckily the system was pretty simple and the functionality was quick to replicate using the shader graph!

Leave a Reply

Your email address will not be published. Required fields are marked *