Physically Based Rendering (PBR) Tests

@emackey - source code

These are some quick tests of PBR using THREE.MeshStandardMaterial.

Fire Hydrant - View Demo

The mesh came from Substance Share and is covered by the Creative Commons 4.0 license. The textures were (mostly) procedurally generated in Substance Painter 2.3.1. The model has some visible polygon edges on the side hose hookups that were not visible in Substance Painter, but these may be artifacts from a sub-optimal conversion process I used. Also, the yellow paint looks shinier in Three.js than it did in Substance Painter.

Chest - View Demo

I believe this is a demo object from Luxology Modo. A detail map was removed such that the model can work just from the primary PBR maps.

Zoom in on one of the brass bumps on the front of the chest. Note that you can see the reflection of the environment in the brass, and again on the metal buckles. The reflection map is not part of the Chest model, it came from the host application's scene. I believe that glTF loaders will need to provide an API for the host app to supply a reflection map to the model being loaded. The reflection map cannot be included in a glTF model if the model is to be loaded into a larger scene.

Normal Tangent Test

It's normal-mapping time. Do you know where your tangent vectors are?