diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 4ff7ff6994cea775bd7e40b3a662ac619cae969a..8a2e85f01c8ca9ce0869d807f96f981dc1849d87 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, 2, 17), + "version": (3, 2, 18), 'blender': (3, 1, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py index 402e06fabd61348a817c0f53fc0f4be11fb40fd5..3805e9bd0256225633fbef1dcbca466ffb4a4feb 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_materials.py @@ -248,9 +248,10 @@ def __gather_extensions(blender_material, export_settings): # KHR_materials_transmission - transmission_extension = __gather_transmission_extension(blender_material, export_settings) + transmission_extension, use_actives_uvmap_transmission = __gather_transmission_extension(blender_material, export_settings) if transmission_extension: extensions["KHR_materials_transmission"] = transmission_extension + actives_uvmaps.extend(use_actives_uvmap_transmission) return extensions, actives_uvmaps if extensions else None @@ -429,17 +430,19 @@ def __gather_transmission_extension(blender_material, export_settings): transmission_extension['transmissionFactor'] = transmission_socket.default_value transmission_enabled = transmission_extension['transmissionFactor'] > 0 elif __has_image_node_from_socket(transmission_socket): - transmission_extension['transmissionFactor'] = 1 + transmission_extension['transmissionFactor'] = 1.0 has_transmission_texture = True transmission_enabled = True if not transmission_enabled: - return None + return None, None # Pack transmission channel (R). if has_transmission_texture: transmission_slots = (transmission_socket,) + use_actives_uvmaps = [] + if len(transmission_slots) > 0: combined_texture, use_active_uvmap = gltf2_blender_gather_texture_info.gather_texture_info( transmission_socket, @@ -448,8 +451,10 @@ def __gather_transmission_extension(blender_material, export_settings): ) if has_transmission_texture: transmission_extension['transmissionTexture'] = combined_texture + if use_active_uvmap: + use_actives_uvmaps.append("transmissionTexture") - return Extension('KHR_materials_transmission', transmission_extension, False), ["transmissionTexture"] if use_active_uvmap else [] + return Extension('KHR_materials_transmission', transmission_extension, False), use_actives_uvmaps def __gather_material_unlit(blender_material, active_uvmap_index, export_settings):