title: How can you dynamically add and remove objects using THREE.InstancedBufferGeometry?
body: <p>I'm trying to get a grip on how the new THREE.InstancedBufferGeometry functionality works so I can evaluate it for my use-case. Specifically, I need an approach where I can add new instances of an object at some point in the future and update them through their attributes, however I won't know how many I need to add during the initial setup. Ideally I'd like to perform as few calls to the GPU during setup and during attribute updates, which is why THREE.InstancedBufferGeometry looks appealing.</p>
  
  <p>I understand how objects can be added all at once and have their attributes dynamically updated, as per these demos:</p>
  
  <ul>
  <li><a href="http://threejs.org/examples/#webgl_buffergeometry_instancing_dynamic" rel="nofollow">http://threejs.org/examples/#webgl_buffergeometry_instancing_dynamic</a></li>
  <li><a href="http://threejs.org/examples/#webgl_buffergeometry_instancing_interleaved_dynamic" rel="nofollow">http://threejs.org/examples/#webgl_buffergeometry_instancing_interleaved_dynamic</a></li>
  </ul>
  
  <p>What I'm not clear on is whether it's possible to dynamically add and remove objects after the initial batch have been created, of if it's actually more like how merging geometry works in Three.js where it's not really possible to easily remove a specific, single object after merging.</p>
  
  <p>In an effort to keep this focussed, how would I dynamically add and remove objects using THREE.InstancedBufferGeometry?</p>