From 69ab986370d989ff0300ecfca4eefa2eb93eb7f5 Mon Sep 17 00:00:00 2001 From: Julien Duroure Date: Fri, 30 Aug 2024 06:29:42 +0200 Subject: [PATCH] glTF exporter: Regression: RGB to Shader socket unlit management --- scripts/addons_core/io_scene_gltf2/__init__.py | 2 +- .../blender/exp/material/search_node_tree.py | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/addons_core/io_scene_gltf2/__init__.py b/scripts/addons_core/io_scene_gltf2/__init__.py index 3b3c4a10ef1..4f91e7151f2 100755 --- a/scripts/addons_core/io_scene_gltf2/__init__.py +++ b/scripts/addons_core/io_scene_gltf2/__init__.py @@ -5,7 +5,7 @@ bl_info = { 'name': 'glTF 2.0 format', 'author': 'Julien Duroure, Scurest, Norbert Nopper, Urs Hanselmann, Moritz Becher, Benjamin Schmithüsen, Jim Eckerlein, and many external contributors', - "version": (4, 3, 16), + "version": (4, 3, 17), 'blender': (4, 2, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', diff --git a/scripts/addons_core/io_scene_gltf2/blender/exp/material/search_node_tree.py b/scripts/addons_core/io_scene_gltf2/blender/exp/material/search_node_tree.py index c121823ab98..f572a0fdf3b 100644 --- a/scripts/addons_core/io_scene_gltf2/blender/exp/material/search_node_tree.py +++ b/scripts/addons_core/io_scene_gltf2/blender/exp/material/search_node_tree.py @@ -343,6 +343,13 @@ class NodeNav: color = color[:3] # drop unused alpha component (assumes shader tree) return color, "node_tree." + nav.out_socket.path_from_id() + ".default_value" + elif self.in_socket.type == 'SHADER': + # Historicaly, we manage RGB node plugged into a shader socket (output node) + if nav.node.type == 'RGB': + color = list(nav.out_socket.default_value) + color = color[:3] + return color, "node_tree." + nav.out_socket.path_from_id() + ".default_value" + elif self.in_socket.type == 'VALUE': if nav.node.type == 'VALUE': return nav.out_socket.default_value, "node_tree." + nav.out_socket.path_from_id() + ".default_value"