Here is a demo of an aircraft in WebGL2 r165. This model was updated to Blender 3.02. Everything is nice and shiny, no error messages.
When I displayed the model in WebGPU r169, it was also nice and shiny. But WebGPU noted there were some UV errors. The right wing which was no longer textured and the glass was missing UVs. I loaded the model into Blender v4.2 (the latest), fixed the errors and exported the result to a glb file. However, as can be seen here, all the reflections are now gone. (I get the same result if I load the v4.2 model into the WebGL2 r165, so this is not a WebGPU problem.)
As far as I can tell my program conforms with WebGPU requirements, as illustrated in webgpu_materials_envmaps.html.
Here is the code for the Skybox:
envMap = cubeLoader
.setPath(SBxSrc)
.load(["px.jpg", "nx.jpg", "py.jpg", "ny.jpg", "pz.jpg", "nz.jpg"]);
envMap.format = THREE.RGBAFormat; // required?
envMap.colorSpace = THREE.SRGBColorSpace; // r152 change
scene.background = envMap;
scene.environment = envMap; // ??? required?
Here is the code for the gltf loader:
gltfLoader.load(mxr_.Src, function (gltf) {
gltf.scene.traverse(function (child) {
if (child.isMesh) {
child.material.envMap = envMap;
...
child.material.needsUpdate = true; // probably not required
}
});
My model displays reflective materials using a Blender shader setup which includes a glTF Metallic shader:
As I test, I have modified the shader setup for the first section of the fuselage to use a Principled BSDF shader, like this:
This appears to agree with the setup shown in the Blender 4.2 here
I suspect that this is a Blender problem (that may date back to Blender v3.3, the oldest version I have). But I am hoping that someone on this message board might have run into and solved this problem.
THANKS!
You got me pointed in the right direction. I needed to change the ORM map. The front section of the fuselage is now reflective - perhaps too much - but I can fix that over time.