Materials (PBR)

What is PBR?

Physically Based Rendering (PBR) is a method of shading and rendering that provides a more accurate representation of how light interacts with surfaces. It can be referred to as Physically Based Rendering (PBR) or Physically Based Shading (PBS). Depending on what aspect of the pipeline is being discussed, PBS is usually specific to shading concepts and PBR specific to rendering and lighting. However, both terms describe on a whole, the process of representing assets from a physically accurate standpoint. - Wes McDermott, Allegorithmic PBR Guide, Vol. 2

PBR is a methodology, not necessarily a hard standard.

The purpose of this article is to guide you through Sketchfab's implementation of PBR, not to teach you how to use PBR. There are many great resources on PBR theory and practice, including Allegorithmic's PBR Guide.

PBR on Sketchfab

You can switch between Classic and PBR rendering in Scene Settings. By default, uploads are set to PBR mode. This is almost always the best choice. It provides more realistic material and lighting, and does not prevent anything that could be done in a Classic workflow. Shading must be Lit for PBR lighting and reflections to work. Using an Environment to light the scene is typically the best option. See Lighting.

The PBR material tools are available in 3D Settings.

  1. From your model, go to Settings → 3D Settings or add "/edit" to the end of any model URL.
  2. Select the Materials panel in the top left.
Only the model's author can access 3D Settings. Edits you make will not change your original file, they will only affect viewing on Sketchfab.

See also Materials and Textures.

Sketchfab 3d model settings material editor

Sketchfab 3d model settings scene editor

Sketchfab 3d model settings material editor

PBR Maps

PBR has two main workflow options: Metalness and Specular.

Switching between workflows will change the workflow for ALL materials in the scene.

Metalness

The channels specific to Metal/Roughness are Base Color, Metalness, and Specular F0.

  • Base Color: an (s)RGB texture or solid color for reflected color (non-metals a.k.a. 'dielectrics') or reflectance values (metals)
  • Metalness: a linear grayscale texture; black (0.0) for non-metal and white (1.0) for raw metal
  • Specular F0: a linear grayscale texture for Fresnel values (non-metals)

Sketchfab 3d model Physically based rendering PBR settings metal

Sketchfab 3d model Physically based rendering PBR settings non-metal dielectrics

Specular

The channels specific to Specular/Glossiness are Albedo and Specular.

  • Albedo: an (s)RGB texture or solid color, without reflectance values
  • Specular: an (s)RGB texture or solid color for reflectance values (metals, color) and F0 (non-metals, grayscale)

Sketchfab 3d model Physically based rendering PBR settings

Sketchfab 3d model Physically based rendering PBR settings

Sketchfab 3d model Physically based rendering PBR settings

Base Color, Albedo, and Diffuse (Classic) are more or less synonymous. All other channels are common to both workflows.

Roughness / Glossiness

A linear grayscale texture, or a solid grayscale color, for describing surface irregularities. See Diffuse vs Specular Reflections.

100% roughness is the same as 0% glossiness, and vice-versa.

Sketchfab 3d model Physically based rendering PBR settings roughness

Sketchfab 3d model Physically based rendering PBR settings glossiness

Displacement

A grayscale depth map to displace a model's vertices. The model must be subdivided as needed before uploading because we cannot generate new vertices in real time.

Sketchfab 3d model Physically based rendering PBR settings displacement

Normal / Bump Map

A texture to add bumps and dents. Enable Invert Y to reverse the bumps and dents. Its usage is the same in PBR and Classic. See also Tangent Space and Normal Maps.

Sketchfab 3d model Physically based rendering PBR settings normal map

Sketchfab 3d model Physically based rendering PBR settings bump map

Ambient Occlusion (AO)

A texture to define large areas of occluded light. Usually, AO only affects the diffuse light contribution. You can enable Occlude specular to also occlude the specular contribution (reflections). It is similar to Lightmap in Classic.

Sketchfab 3d model Physically based rendering PBR settings ambient occlusion

Sketchfab 3d model Physically based rendering PBR settings ambient occlusion specular

Cavity

A texture to define small areas of occluded light. It does not exist in Classic.

Sketchfab 3d model Physically based rendering PBR settings cavity

Transparency

Sketchfab supports several transparency modes: BlendingAdditiveDithered, and Mask. Its usage is the same in PBR and Classic.

See Transparency for details.

Emission

A texture or a solid color to make the material glow. Its usage is the same in PBR and Classic.

Sketchfab 3d model Physically based rendering PBR settings emission

Faces Rendering

You can switch between rendering both sides of a material surface or just the front face. Single-sided rendering (back-face culling) is often a good choice for 3D scans. It can also help performance. Other applications include Cel Shading and Cartoon Outlines. Its usage is the same in PBR and Classic.

Sketchfab 3d model Physically based rendering PBR settings back face culling

Saving

Once you've made your adjustments, including position and orientation, be sure to update your model's thumbnail image and default position with Save View and/or save your changes with Save Settings. You can return to your model by clicking either the model's name or Exit.

Also see:

Have more questions? Submit a request

Comments

  • Avatar
    somchith3d

    Is it possible to have separate Metalness and Specular materials?

  • Avatar
    auslander

    I just can't add a moving custom environment, it is static, what do I do wrong?

  • Avatar
    James

    @somchith3d - Not at the moment: Switching between them will change the workflow for ALL materials in the scene.

    @auslander - I'm not sure what you mean, can you elaborate?

  • Avatar
    hocusproducts

    Hello, I have imported my model as a .STL. I am a product design engineer, not a rendering or 3D artist type, so I was quite surprised to see our favourite formats of .IGES and .STEP are not supported. I had to faff about and work out how to export an STL to get it into Sketchfab. The problem I have now is, the model is made up of several parts. There is a case and it has buttons on it. I need the buttons to be another material to the case. The STL seems to have imported in such a way that it treats the buttons and the case as the same 3D object. I cannot workout therefore how to apply a different material to the buttons than the case. I have a horrible feeling that I wont be able to do this. If this is the case, can you tell me how I might be able to get round this, bearing in mind that as a design engineer, I don't use 3DS max or any of the graphic/art type modelling systems.

    Thanks.

  • Avatar
    rubykamen

    in the future can we have emission map, but based on gradients normals?

  • Avatar
    rubykamen

    or maybe in near future we can have a stand alone sketchfab win applications. for better adjustments, say setting up color animations; its graph etc before publishing it... 

  • Avatar
    James

    Hi @rubykamen - Sounds interesting. Do you have an example of this kind of emission map?

  • Avatar
    rubykamen

    hi @james - glad you interested... its for faking SSS, X-ray materials or maybe making some kind of xplosion ( sadly currently we cant make it with voxels ) with emission value controlled from the gradient normals... 

  • Avatar
    whitejackal

    I still cant get my textures to show up on my models, it just dose the color of the texture. i am using blender.

  • Avatar
    James

    @whitejackal Are they properly UV unwrapped and embedded in the .blend file? https://help.sketchfab.com/hc/en-us/articles/209143886-Blender-Materials#blender-textures

    Could you post a link to the upload so I can take a closer look?

  • Avatar
    whitejackal

    @James i don't know how to UV yet, they are generated textures. https://sketchfab.com/models/8a0cd3a2261a4c5ca7415129d066f18d 

     

     

     

    this is what its suposed to look like

     

  • Avatar
    James

    Thanks. I just saw your email. I'll reply there.

    We only support UV mapped textures in Blender at the moment.

    https://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/UV_Map_Basics

  • Avatar
    mmkh

    Hello, I recently uploaded a 3D model that is supposed to have different materials/textures assigned to different parts of the model. In Maya, I have 5 different materials, each with their own unique texture that is currently 2K resolution. However after previewing it in 3D Settings on Sketchfab, under the Materials tab I only see "Scene - Root" as the only material. How can I assign different textures that I upload to different parts in Sketchfab to get my model to display correctly? Thanks

  • Avatar
    James

    @mmkh - I'm sorry you're having trouble. What file format did you upload? Have you tried the Maya Exporter plugin? https://sketchfab.com/exporters/maya