Search

The Official Capture Blog

Physically Based Rendering in Capture Atlas

Capture Atlas introduces a new material and shading system commonly known as "Physically Based Rendering" or PBR for short. Physically based rendering generally includes a number of different things and Capture already simulates lighting from a physically based perspective, but the new shading model provides a more realistic lighting response from surfaces and improves the look of materials in the visualizer.


Materials in Capture Argo (left) compared to Atlas (right)

Benefits
Computer graphics (and especially real-time graphics) has traditionally rendered images based on mathematical formulas that try to mimic how we believe surfaces look. PBR changes the math to use actual physical models to simulate lighting response from surfaces. The main benefit of this is that a material will behave correctly in different lighting situations while a material using the old model often could look out of place when the lighting changed drastically.

The new material model also allows us to simulate more material properties such as how rough or smooth a surface is on a microscopic level. We can also render different metals in addition to non-metal materials.

Despite being more technically advanced, PBR materials are often easier to work with using just a few simple parameters, but it is important to get these parameters correct as these properties define how the surface will reflect light. The material parameters are more intuitive however and there are guidelines and tables of material values that can help to get them set up correctly. We have also begun work on a PBR material library that can be used to quickly get a correct material response or serve as a starting point for custom materials.

Workflow
PBR materials in Capture Atlas are defined by three main parameters: base color, smoothness and metallic.


A metallic and a non-metallic material with the same color

The metallic parameter sets if a material should behave as a metal or as a non-metal surface and it is best to set this to either 0% for non-metals and 100% for metals. 


Different base colors for non-metallic and metallic materials

Base color is not just a color but also defines how much light a material reflects. For instance snow reflects much more light than sand. The RGB components of this parameter should be in the range 30-240 for non-metals and 180-255 for metals. This parameter is controlled by the material texture. (Base color automatically maps to specular color for metals and diffuse colors for non-metals.)


Metallic and non-metallic materials with varying amount of smoothness

Smoothness specifies how rough or smooth a surface is on a microscopic level. A material such as concrete would have a low smoothness value while varnished wood would have a much higher value.

Values for these parameters, especially the base color parameter, can often be picked from existing tables for different kinds of materials. There are several great resources for this such as Sébastien Lagarde’s material chart for the Unreal game engine which is also applicable to Capture: https://seblagarde.wordpress.com/2014/04/14/dontnod-physically-based-rendering-chart-for-unreal-engine-4/ These values can help serve as a good starting point for your own materials.

Allegorithmic has a great overview of PBR in two parts for both theory and practical guidelines available at https://www.allegorithmic.com/pbr-guide. Please note that Capture currently only supports a few of these parameters and rendering techniques.

We hope that the new material system in Capture Atlas will help you create more realistic and visually interesting images!

Tags