Until now all geometry was generated and processed beforehand, which is a bad thing for a number of reasons. Firstly, generating a small asteroid (about 200 meters in diameter) with an acceptable vertex density for a camera situated at 50 meters was producing a total of 327k triangles. That's foolish. Now if I wanted to show more than one asteroid at the same time I'd be screwed. Another major problem was the asteroid size. If I had an asteroid double the size (400 meters in diameter) the vertex density would be halved, so maintaining the mesh resolution will produce 327k x 2 triangles.
Because of these huge limitations I decided to add some form of LOD (level of detail) to the engine,, meaning that visible geometry will be rendered with the appropiate number of triangles based on the distance to the camera.
I've uploaded a video showing my first attempt at Chunked LOD.
The fun thing here is that the whole cube is rendered using the same single quad (4 vertices and 2 triangles)