After updating Babylon.js from 8.12.1 to 8.44.0, I’m experiencing a problem importing GLTF files exported by Babylon.js into Blender:
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/__init__.py", line 2013, in execute
WARN | return self.import_gltf2(context)
WARN | ~~~~~~~~~~~~~~~~~^^^^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/__init__.py", line 2045, in import_gltf2
WARN | return self.unit_import(self.filepath, import_settings)
WARN | ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/__init__.py", line 2060, in unit_import
WARN | BlenderGlTF.create(gltf_importer)
WARN | ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/blender_gltf.py", line 40, in create
WARN | BlenderGlTF._create(gltf)
WARN | ~~~~~~~~~~~~~~~~~~~^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/blender_gltf.py", line 47, in _create
WARN | BlenderScene.create(gltf)
WARN | ~~~~~~~~~~~~~~~~~~~^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/scene.py", line 39, in create
WARN | BlenderNode.create_vnode(gltf, 'root')
WARN | ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/node.py", line 47, in create_vnode
WARN | BlenderNode.create_vnode(gltf, child)
WARN | ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/node.py", line 33, in create_vnode
WARN | obj = BlenderNode.create_object(gltf, vnode_id)
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/node.py", line 54, in create_object
WARN | obj = BlenderNode.create_mesh_object(gltf, vnode)
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/node.py", line 304, in create_mesh_object
WARN | mesh = BlenderMesh.create(gltf, pynode.mesh, pynode.skin)
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/mesh.py", line 26, in create
WARN | return create_mesh(gltf, mesh_idx, skin_idx)
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/mesh.py", line 47, in create_mesh
WARN | do_primitives(gltf, mesh_idx, skin_idx, mesh, tmp_ob)
WARN | ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/blender/imp/mesh.py", line 177, in do_primitives
WARN | indices = BinaryData.decode_accessor(gltf, prim.indices)
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/io/imp/gltf2_io_binary.py", line 72, in decode_accessor
WARN | array = BinaryData.decode_accessor_obj(gltf, accessor)
WARN | File "/usr/share/blender/5.0/scripts/addons_core/io_scene_gltf2/io/imp/gltf2_io_binary.py", line 130, in decode_accessor_obj
WARN | array = np.frombuffer(
WARN | buffer_data,
WARN | dtype=np.dtype(dtype).newbyteorder('<'),
WARN | count=accessor.count * component_nb,
WARN | )
WARN | ValueError: buffer is smaller than requested size
I haven’t had time to delve into the issue yet, but I’m pretty sure the update caused the problem.
I attached a GLTF file that can reproduce the problem (on the Blender’s side). I’ll update the thread if I find anything new.
Thanks!
import problem.zip (4.7 MB)

