Removing thin instances vs gpupicker

I’ll update doc when I have a better grasp of what is going on.
Another repro for instances this time: Babylon.js Playground

Beginning to see the pattern that

a) any instances/thin instances added/removed needs a picker.setPickingList([...list]) update to refresh the gpu. for instances, do it after instance.dispose();
b) root meshes used for normal instances must be enabled and also in the list for gpu picking to work, even if they are not meant to be seen.
c) root meshes for thin instances need a gpu refresh for any matrix buffer changes.
d) spawning the first thin instance of a mesh gives thinInstanceIndex of undefined on pickAsync until the gpu pick list is refreshed.
e) renderOverlay or any shader/plugin with similar behaviors doesn’t work with gpu picking, this happens for stock, clones, meshes with no instances/thin instances.

Maybe I should just shut up and go read the source… :stuck_out_tongue: