MeshStandardMaterial and Specular Map

So my modeler sent me some nice looking tables and chairs. This time with Glossiness Maps oooooh!

So I just switched the material type to MeshStandardMaterial, inverted the glossiness map colors and plugged it into the roughnessMap paramater.

Three.js crashed. This happened because I also was using the provided SpecularMap and I got javascript errors. Perhaps SpecularMaps are not intended for MeshStandardMaterial (really?), but I would expect a console warning or something, not a complete fail lol.

Is this perhaps worthy of submitting an issue? Also, why not have specular maps on that material type out of curiosity?

I can’t reproduce this with the following live example: Edit fiddle - JSFiddle - Code Playground

It just reports the expected warning: THREE.MeshStandardMaterial: ‘specularMap’ is not a property of this material.

Using a specular component when the lighting model already uses metalness is redundant (see Specular color map? · Issue #7290 · mrdoob/three.js · GitHub). Also see:

https://help.poliigon.com/en/articles/1712659-the-differences-between-metalness-and-specular-workflows

3 Likes

That makes sense.

I think it broke for me since I was doing:

mat.specularMap = smap;