bevy icon indicating copy to clipboard operation
bevy copied to clipboard

Add support for Khronos Material Extensions for glTF 2.0

Open Andrewp2 opened this issue 3 years ago • 2 comments

What problem does this solve or what need does it fill?

Bevy's StandardMaterial supports the same parameters supported by the metallic-roughness material model, as well as the additional parameters from https://www.khronos.org/registry/glTF/specs/2.0/glTF-2.0.html#materials. (normal, occlusion, emissive, alphaMode, doubleSided, and unlit)

The "Ratified Khronos Extensions for glTF 2.0" defines 8 more: https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos

Specifically, these are:

KHR_materials_clearcoat, 
KHR_materials_emissive_strength, 
KHR_materials_ior, 
KHR_materials_sheen, 
KHR_materials_specular, 
KHR_materials_transmission, 
KHR_materials_variants, 
KHR_materials_volume

What solution would you like?

When loading a glTF Mesh, the user could opt-in to certain extensions which would then be available on the material.

Andrewp2 avatar Jul 02 '22 19:07 Andrewp2

See also Autodesk's Standard Surface.

JMS55 avatar Feb 02 '23 20:02 JMS55

See also: https://projects.blender.org/blender/blender/issues/99447

JMS55 avatar Mar 04 '23 23:03 JMS55

We already have emissive and bloom, and would like to support KHR_materials_emissive_strength for gltf files. Unfortunately, our current gltf library doesn't support that extension.

JMS55 avatar Mar 16 '23 17:03 JMS55

Unfortunately, our current gltf library doesn't support that extension.

Someone could resubmit https://github.com/gltf-rs/gltf/pull/350

mockersf avatar Mar 16 '23 17:03 mockersf

Adobe has a really nice material model as well!

  • https://helpx.adobe.com/dimension/using/standard-materials.html
  • https://substance3d.adobe.com/documentation/s3d/files/225969599/225969601/1/1647019577092/Adobe+Standard+Material+-+Technical+Documentation.pdf
  • https://renderwonk.com/publications/wp-generalization-adobe/gen-adobe.pdf

JMS55 avatar Mar 26 '23 02:03 JMS55

https://github.com/gltf-rs/gltf/pull/374 has been merged :)

JMS55 avatar Aug 01 '23 18:08 JMS55

Also note that #8015 will cover some more of these properties

JMS55 avatar Aug 01 '23 18:08 JMS55

OpenPBR has been released! https://github.com/AcademySoftwareFoundation/OpenPBR, https://academysoftwarefoundation.github.io/OpenPBR/

JMS55 avatar Oct 28 '23 21:10 JMS55