Binoculars: Hard surface modelling and PBR texture maps

Tools: Maya ZBrush Unreal Engine Substance Painter Photoshop

The goal was to create a hard surface 3D model ready for Unreal Engine and create a material for it using PBR metalness workflow. I also wanted to practice Substance Painter software using the free trial version.


Texture maps

Binoculars in Unreal Engine in different scenes

Binoculars rendered in Substance Painter



In order to fulfill my goal I decided to adapt the following workflow: analysis of the reference object; creation of the base low-poly model and UV map in Maya; sculpting the fine detail in ZBrush; baking, adding final detail and texturing in Substance Painter; testing the model in Unreal Engine. The texture maps that I had to create were: Albedo/diffuse, normal, metallic, roughness and ambient occlusion. The detailed walkthrough of this project can be found in my blog post.


After modelling the binoculars in Maya, I added the detal in ZBrush. During this process I realised that some detail (like the ridges on the sides of the scopes) needed to be sculpted as well. So I had to jump between Maya and ZBrush in order to fulfill the goal. In order to practice hard surface modelling I was treating this project as if I was not modelling a small object like binoculars, but as if it was a big spaceship for a game, therefore I allowed myself to indulge in creating extra detail.

PBR material creation

I imported both low poly and high poly versions of the binoculars into my trial version of Substance painter and baked the normal and ambient occlusion maps.

From then on I had to rely on my previous analysis of the physical binoculars in order to figure out the correct settings for metalness and roughness for different elements. The scopes are rubber coated metal, the frames are painted metal (this can be seen where the paint is chipped off), mechanical elements are metal, lenses are glass and two of them are framed with glossy black plastic.

I tried to copy the weathered areas where the paint is chipped off as accurately as possible using various brushes. The +, 0 and - signs were done using alpha masks included in Substance Painter. For the text I had to create my own alphas using pictures of the binoculars and Adobe Photoshop.

Testing in Unreal Engine

To test the model I decided to place it into various scenes in Unreal Engine and see how it behaves. The material creation in Unreal was very straight forward. I just imported all of the maps and connected them to the nodes in the binoculars material. The only issue worth mentioning is that when I imported the roughness map, it made the binoculars appear too glossy, an easy fix for that was disabling sRGB in the image properties. I did the same for the metalness and AO map.


The process was very straightforward and fun. I practiced hard surface modelling and I've learned more about how much of the detail needs to be modelled vs how much can be done just through normal maps. It was interesting working with a real life object and seeing how it can be transferred into 3D. Also using PBR metalness workflow was a new thing for me and I can see how powerful it is, so I am looking forward to using it in future projects.