Rather - there’s no case for it. This notation is mostly legacy and has not much practical use - with GLTFLoader or without.
WebGL can bind one material shader at a time - so whether you’ll go with:
Group ->
Mesh_A ->
Geometry_A
Material_A
Mesh_B ->
Geometry_B
Material_B
or
Mesh_AB ->
Geometry_AB
[ Material_A, Material_B ]
That’s still going to be 2 draw calls on two separate geometry+material pairs (in the second case you’re just mapping the materials using BufferGeometry.groups instead of actual groups.)
The advantage of the first approach (the one also used by GLTF) is that you can quite way simpler modify geometry+material pairs (their geometries, positions, visibility etc.) at any time using just the Mesh API, without the need of modifying the position
attribute of BufferGeometry by hand.