Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Converting SpecularGlossiness back to MetallicRoughness #2342

Closed
vpenades opened this issue Oct 29, 2023 · 2 comments
Closed

Converting SpecularGlossiness back to MetallicRoughness #2342

vpenades opened this issue Oct 29, 2023 · 2 comments

Comments

@vpenades
Copy link
Contributor

A while ago, I noticed SpecularGlossiness has been archived.

Also, more material extensions have been introduced, like Specular and IOR

I was wondering if it's possible to easily transfer the properties of SpecularGlossiness back to MetallicRoughness with the help of the newer extension.

Or is it a more complex process, which would require to do texture conversions?

Is there an official approach on how to deal with MetallicRoughness on models in the wild, now that it's been archived?

@donmccurdy
Copy link
Contributor

donmccurdy commented Oct 29, 2023

Some resources:

It is necessary to either rewrite textures ,probably an offline process, or wrap textures in an expression – e.g. using a shader graph or custom GLSL containing the texture lookup as input to a PBR surface definition.

For three.js users we've encouraged doing the conversion offline, as the texture rewrites are a bit slow for runtime.

npm i --global @gltf-transform/cli

gltf-transform metalrough in.glb out.glb

@vpenades
Copy link
Contributor Author

ouch!, I hoped there would be some easy conversion path, so I could get rid of the extension on load.

Given the conversion is non trivial, I guess I'll have to keep the extension around for backwards compatibility.

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants