Exported emissive values clamped to 1

We are using exported emissive lights via PBR materials and have noticed that their values are clamped at 1 when we are using linear colour space and want our lights to be higher than 1 in emissive values RGB 0-1
FixEmissive.ts

Original Post on Discord

by user 103054507105067008

Flagged an issue about this here as I made a helper script attached above to change the emission values at runtime to work around this which made me notice that pmndrs Bloom post processing doesn’t react to emission values higher than 1 despite working in Linear colour space, when emissive intensity 100 is a lot brighter than 1 it should bloom with higher threshold values set vs emissive intensity 0-1
https://github.com/pmndrs/postprocessing/issues/439

by user 103054507105067008

Clamped where? We support the KHR_materials_emissive_strength extension, so full HDR value ranges are definitely supported, and I’ve tested that with bloom too

Ah you mean it’s an issue in pmndrs/postprocessing… hm

Potentially is, looking for another place to check why the emissive values are being clamped

by user 103054507105067008

What Bloom did you test with?

by user 103054507105067008

Example export here of the emissive I can see that the emissive colour RGB 0-1 value set to 100 on the Shader Graphs/glTF=pbrMetallicRoughness does export, if this works in a scene you used a different bloom to the pmndrs/postprocessing one let me know? For now I will chase up the issue at the link in this post with pmndrs as something is up with their bloom
Deck_wash_x2_ON_1.zip

by user 103054507105067008

Looks good in Blender

by user 103054507105067008

Sandbox example I made using the pmndrs sandbox to check it wasn’t just my Needle + Three.js scene having the same issue :sweat_smile:
https://github.com/pmndrs/postprocessing/issues/439#issuecomment-1362762860

by user 103054507105067008

Recommend that when you send glTF files in bug reports you do regular UnityGltf exports, not with the needle components. Higher chance of getting them accepted. Otherwise e.g. the skybox uses a non-official texture format (exr) which will trip of most viewers.

Yup the model is exported from Blender to them

by user 103054507105067008

Does Blender actually support KHR_materials_emissive_strength?

Looks like it is in Blender 3.3+

Using 3.4 Blender, when using console.log(this.mainMaterial); I can see the emissive colour and intensity are as high as they were set. If you have any test model let me know as I can update that bug report with more model examples

by user 103054507105067008