Not able to see the roughness on the non-metallic parts of the model, it looks correct in don mccurdy gltf viewer. What am I missing?

Are you using StandardMaterial for non-metallics?

THREE.MeshStandardMaterial() had the default value of 0.5 for roughness & metalness which were removed.

Try adjusting 'em.

Yea, tried manipulating both the values. Doesn’t change the output. But changing the HDRI used makes a little difference.

Can you tell me the return value for material.roughness & material.metalness?

This attachment show how Standard Material works in different versions.
The default 3JS v is 103, notice you have a shiny ball. Use the select box to load 122.
No external changes are made to material, but color and refection are not the same.

OC_Bug.html (5.9 KB)

The default values of metalness and roughness is 1 for the model with standard material based on 106 release.

Looking at the sphere appearance on different version means the different default values of metalness and roughness on the standard material. Is that right? And changing them with envMap set on the material makes change on the overall model appearance.

I was thinking about a way to only affect the non-metallic parts of the model in threejs or that can only be obtained by making changes into the material node setup of the model.

Try setting material to:
new THREE.MeshStandardMaterial({ roughness: 0.9, metalness: 0.1, map: …

If you don’t set these values, 3JS does it for you and we do not want that.
If I were you, I would do away with envMap, use Phong for non-metallic & Standard for metallics.

Good Luck