In order to have a fairly large map, I need to have only a portion of the terrain in memory at a given time, and then update it as the user moves. I'm wondering whether it's better to : a) have a single object for the in-memory terrain and then add and subtract triangles from the sides as the user moves (is it possible to subtract triangles?); or b) divide the in-memory terrain into several chunks, each of which is a separate Object3D, and then when the user moves too far in a given direction, reposition these objects while deleting the chunks which are now well beyond the viewable area and adding new chunks on the other side. c) Is there a third option?