diff options
author | Rodolfo Ribeiro Gomes <rodolforg@gmail.com> | 2018-06-20 23:44:08 -0300 |
---|---|---|
committer | Rodolfo Ribeiro Gomes <rodolforg@gmail.com> | 2018-06-21 00:00:58 -0300 |
commit | 01b01209a3ec3da4df17b03d401560bb664772c6 (patch) | |
tree | 08015510ea889c137513df8d653e7828eea31f93 /editor | |
parent | a9acdd84b7a6fd074f21d500a64976326f6cbb67 (diff) |
fix default glTF metallic & roughness factor values
The glTF 2.0 spec says that these pbrMetallicRoughness material
properties should be set as 1.0 by default.
In fact, KhronosGroup's official Blender Exporter does not even write
down those parameters if they are set as 1.0.
However, Godot import them as 0.0.
https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#pbrmetallicroughness
Fixes: #19613 https://github.com/godotengine/godot/issues/19613
Diffstat (limited to 'editor')
-rw-r--r-- | editor/import/editor_scene_importer_gltf.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/editor/import/editor_scene_importer_gltf.cpp b/editor/import/editor_scene_importer_gltf.cpp index 07a4cf5884..777f757bb4 100644 --- a/editor/import/editor_scene_importer_gltf.cpp +++ b/editor/import/editor_scene_importer_gltf.cpp @@ -1256,12 +1256,15 @@ Error EditorSceneImporterGLTF::_parse_materials(GLTFState &state) { } if (mr.has("metallicFactor")) { - material->set_metallic(mr["metallicFactor"]); + } else { + material->set_metallic(1.0); } - if (mr.has("roughnessFactor")) { + if (mr.has("roughnessFactor")) { material->set_roughness(mr["roughnessFactor"]); + } else { + material->set_roughness(1.0); } if (mr.has("metallicRoughnessTexture")) { |