From eca1bdeb88a35deeaec8f2969953dd6d503315a3 Mon Sep 17 00:00:00 2001 From: Julien Duroure Date: Sat, 6 Aug 2022 12:15:54 +0200 Subject: glTF exporter: KHR_material_volume: thickness is now default to 0.0 (as in specification) --- io_scene_gltf2/__init__.py | 2 +- io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py | 2 +- io_scene_gltf2/blender/exp/gltf2_blender_gather_materials_volume.py | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 6146be8a..3fb5ad4d 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, 22), + "version": (3, 3, 23), 'blender': (3, 3, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', 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 0bca9933..7dfef7dc 100755 --- a/io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py +++ b/io_scene_gltf2/blender/com/gltf2_blender_material_helpers.py @@ -14,7 +14,7 @@ def create_settings_group(name): gltf_node_group = bpy.data.node_groups.new(name, 'ShaderNodeTree') gltf_node_group.inputs.new("NodeSocketFloat", "Occlusion") thicknessFactor = gltf_node_group.inputs.new("NodeSocketFloat", "Thickness") - thicknessFactor.default_value = 1.0 + thicknessFactor.default_value = 0.0 gltf_node_group.nodes.new('NodeGroupOutput') gltf_node_group_input = gltf_node_group.nodes.new('NodeGroupInput') gltf_node_group_input.location = -200, 0 diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials_volume.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials_volume.py index 57b00700..8a69e3f6 100644 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials_volume.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials_volume.py @@ -27,12 +27,12 @@ def export_volume(blender_material, export_settings): thicknesss_socket = gltf2_blender_get.get_socket_old(blender_material, 'Thickness') if thicknesss_socket is None: - volume_extension['thicknessFactor'] = 1.0 + # If no thickness (here because there is no glTF Material Output node), no volume extension export + return None, None density_socket = gltf2_blender_get.get_socket(blender_material, 'Density', volume=True) attenuation_color_socket = gltf2_blender_get.get_socket(blender_material, 'Color', volume=True) - if density_socket is None or attenuation_color_socket is None: - return None, None + # Even if density or attenuation are not set, we export volume extension if isinstance(attenuation_color_socket, bpy.types.NodeSocket): rgb = gltf2_blender_get.get_const_from_default_value_socket(attenuation_color_socket, kind='RGB') -- cgit v1.2.3