From e69ecee8efcc874b6447e8790e25a3f712858d52 Mon Sep 17 00:00:00 2001 From: demolke Date: Sat, 6 Jul 2024 13:38:45 +0200 Subject: [PATCH] Update vertex color import to handle Blender 4.2 upwards Blender commit https://projects.blender.org/blender/blender/commit/0f0a8df8a922cdb0796c0b3fdbdc5c669efb3059 which is landing in 4.2 deprecated `vertex_colors` GLTF property, use `export_vertex_color` instead. (cherry picked from commit 7864abbeec103b2a3a2aa9713642a19b5a962b7e) --- .../gltf/editor/editor_scene_importer_blend.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/modules/gltf/editor/editor_scene_importer_blend.cpp b/modules/gltf/editor/editor_scene_importer_blend.cpp index 4967913b856..dc96bc274af 100644 --- a/modules/gltf/editor/editor_scene_importer_blend.cpp +++ b/modules/gltf/editor/editor_scene_importer_blend.cpp @@ -182,10 +182,18 @@ Node *EditorSceneFormatImporterBlend::import_scene(const String &p_path, uint32_ } else { parameters_map["export_lights"] = false; } - if (p_options.has(SNAME("blender/meshes/colors")) && p_options[SNAME("blender/meshes/colors")]) { - parameters_map["export_colors"] = true; + if (blender_major_version > 4 || (blender_major_version == 4 && blender_minor_version >= 2)) { + if (p_options.has(SNAME("blender/meshes/colors")) && p_options[SNAME("blender/meshes/colors")]) { + parameters_map["export_vertex_color"] = "MATERIAL"; + } else { + parameters_map["export_vertex_color"] = "NONE"; + } } else { - parameters_map["export_colors"] = false; + if (p_options.has(SNAME("blender/meshes/colors")) && p_options[SNAME("blender/meshes/colors")]) { + parameters_map["export_colors"] = true; + } else { + parameters_map["export_colors"] = false; + } } if (p_options.has(SNAME("blender/nodes/visible"))) { int32_t visible = p_options["blender/nodes/visible"];