EXT_mesh_gpu_instancing not supporting multiple geometries

thought it was able to export instanced GLTFs after installing gltf EXT_mesh_gpu_instancing IO addon…

If you’re using an additional addon that doesn’t come with Blender, then that’s the information I was missing. I haven’t used this addon, and couldn’t guess whether it needs to be used in a particular way, or whether it has a bug, you may need to file an issue on its GitHub repository for that.

Another way, using only “stock” Blender, would be:

  1. Following the workflow in the second half of this tutorial, enable “As Instance” in your Object Info nodes:

Screenshot 2023-03-27 at 2.29.10 PM

  1. Select the object, open the search menu, and run “Make Instances Real”. This will create a lot of objects, you may want to use a Collection.

  2. Export the scene to glTF. The file may be larger because of the many objects.

  3. Use glTF Transform to convert the reused objects to instances:

npm install --global @gltf-transform/cli

gltf-transform optimize input.glb output.glb

The model will then be loaded in three.js using THREE.InstancedMesh, instead of many objects and draw calls.