From c58c8f3c3525247c6f584684260eae4ea87a57a3 Mon Sep 17 00:00:00 2001 From: Julien Duroure Date: Sat, 6 Aug 2022 12:07:14 +0200 Subject: glTF: rename glTF Settings node to glTF Material Output --- io_scene_gltf2/__init__.py | 4 ++-- io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py | 6 +++++- io_scene_gltf2/blender/com/gltf2_blender_ui.py | 5 ++--- io_scene_gltf2/blender/exp/gltf2_blender_get.py | 6 +++--- io_scene_gltf2/blender/imp/gltf2_blender_pbrMetallicRoughness.py | 2 +- 5 files changed, 13 insertions(+), 10 deletions(-) diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 5b2b12ed..e3e2c483 100755 --- a/io_scene_gltf2/__init__.py +++ b/io_scene_gltf2/__init__.py @@ -4,7 +4,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": (3, 3, 20), + "version": (3, 3, 21), 'blender': (3, 3, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', @@ -1257,7 +1257,7 @@ class GLTF_AddonPreferences(bpy.types.AddonPreferences): settings_node_ui : bpy.props.BoolProperty( default= False, - description="Displays glTF Settings node in Shader Editor (Menu Add > Output)" + description="Displays glTF Material Output node in Shader Editor (Menu Add > Output)" ) KHR_materials_variants_ui : bpy.props.BoolProperty( diff --git a/io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py b/io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py index a44562a1..0bca9933 100755 --- a/io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py +++ b/io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py @@ -3,9 +3,13 @@ import bpy -def get_gltf_node_name(): +# Get compatibility at export with old files +def get_gltf_node_old_name(): return "glTF Settings" +def get_gltf_node_name(): + return "glTF Material Output" + def create_settings_group(name): gltf_node_group = bpy.data.node_groups.new(name, 'ShaderNodeTree') gltf_node_group.inputs.new("NodeSocketFloat", "Occlusion") diff --git a/io_scene_gltf2/blender/com/gltf2_blender_ui.py b/io_scene_gltf2/blender/com/gltf2_blender_ui.py index 6a667630..2f24c081 100644 --- a/io_scene_gltf2/blender/com/gltf2_blender_ui.py +++ b/io_scene_gltf2/blender/com/gltf2_blender_ui.py @@ -5,7 +5,7 @@ import bpy from ..com.gltf2_blender_material_helpers import get_gltf_node_name, create_settings_group from ..com.gltf2_blender_material_helpers import get_gltf_pbr_non_converted_name, create_gltf_pbr_non_converted_group -################ glTF Settings node ########################################### +################ glTF Material Output node ########################################### def create_gltf_ao_group(operator, group_name): @@ -16,10 +16,9 @@ def create_gltf_ao_group(operator, group_name): class NODE_OT_GLTF_SETTINGS(bpy.types.Operator): bl_idname = "node.gltf_settings_node_operator" - bl_label = "glTF Settings" + bl_label = "glTF Material Ouptut" bl_description = "Add a node to the active tree for glTF export" - @classmethod def poll(cls, context): space = context.space_data diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_get.py b/io_scene_gltf2/blender/exp/gltf2_blender_get.py index 17eacf86..da6e9b57 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_get.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_get.py @@ -4,7 +4,7 @@ import bpy from mathutils import Vector, Matrix -from ..com.gltf2_blender_material_helpers import get_gltf_node_name, get_gltf_pbr_non_converted_name +from ..com.gltf2_blender_material_helpers import get_gltf_node_name, get_gltf_node_old_name, get_gltf_pbr_non_converted_name from ...blender.com.gltf2_blender_conversion import texture_transform_blender_to_gltf from io_scene_gltf2.io.com import gltf2_io_debug from io_scene_gltf2.blender.exp import gltf2_blender_search_node_tree @@ -94,11 +94,11 @@ def get_socket_old(blender_material: bpy.types.Material, name: str): :param name: the name of the socket :return: a blender NodeSocket """ - gltf_node_group_name = get_gltf_node_name().lower() + gltf_node_group_names = [get_gltf_node_name().lower(), get_gltf_node_old_name().lower()] if blender_material.node_tree and blender_material.use_nodes: nodes = [n for n in blender_material.node_tree.nodes if \ isinstance(n, bpy.types.ShaderNodeGroup) and \ - (n.node_tree.name.startswith('glTF Metallic Roughness') or n.node_tree.name.lower() == gltf_node_group_name)] + (n.node_tree.name.startswith('glTF Metallic Roughness') or n.node_tree.name.lower() in gltf_node_group_names)] inputs = sum([[input for input in node.inputs if input.name == name] for node in nodes], []) if inputs: return inputs[0] diff --git a/io_scene_gltf2/blender/imp/gltf2_blender_pbrMetallicRoughness.py b/io_scene_gltf2/blender/imp/gltf2_blender_pbrMetallicRoughness.py index cc001b72..696aa1fc 100755 --- a/io_scene_gltf2/blender/imp/gltf2_blender_pbrMetallicRoughness.py +++ b/io_scene_gltf2/blender/imp/gltf2_blender_pbrMetallicRoughness.py @@ -65,7 +65,7 @@ def pbr_metallic_roughness(mh: MaterialHelper): need_volume_node = True - # We also need glTF Settings Node, to set thicknessFactor and thicknessTexture + # We also need glTF Material Output Node, to set thicknessFactor and thicknessTexture mh.settings_node = make_settings_node(mh) mh.settings_node.location = additional_location mh.settings_node.width = 180 -- cgit v1.2.3