LabPBR Implementation Requirements

From shaderLABS

Shader Packs

Required Components

  • decoding of the RGB channels into the correct material data
  • decoding of the f0/reflectance data into the metallic data, as described in the specular texture details
    • hardcoded metals are optional
  • reconstruction of the z-component of the normal map using the method described in the normal texture details

Optional Components

  • processing of porosity data
  • processing of subsurface data
  • processing of emissive data
  • processing of material AO
  • usage of the provided height map for effects like POM
  • usage of hardcoded metal types


If any optional components are supported, they shall be enabled out of the box when enabling resource pack support. However, expensive effects like POM are excluded from this.

Resource Packs

Required Components

Optional Components

  • usage of a normal map
  • storing the height map in the alpha channel of the normal texture
  • usage of the material AO feature
  • providing porosity data
  • usage of the emission/subsurface effect


IMPORTANT
Resource and shader packs are required to be designed to work properly if one of the optional features is left unused on either side. The inclusion of optional features is up to the artist/developer, but especially shader packs are encouraged to support as many of the optional features as possible.