You've got a significant problem with your code, which is probably causing you to think the genreation is being messed up.
You're only drawing each box once. It looks like you may think that you're adding boxes to a list to draw each frame, but it doesn't work like that. Each box is drawn once, and after that it's just a bunch of pixels on screen that wont move if you mve the camera. All moving the camera will achieve is that the box drawn in a frame will be affected. You'll also have no problem with the sketch slowing down, since you'll not ever be drawing more than one box a frame.
To do what I think you want to do, you'll need to create an array of sets fo coordinates, and redraw each box each frame, that way you'll see all boxes move with the camera movements.
So some pseudo code of what you'll need to do:
Code:
coord[] boxes;
class coords
{
float x,y,z;
coords(float _x, float // etc etc...
}
void setup()
{
//normal setup stuff;
boxes=new coord[0];
}
void draw()
{
background(0); // need to clear screen or there'll be a mess
if(boxes.length<1000) // limit number of boxes
{
boxes=(coord[])append(boxes,new coord(x,y,z));
}
// position camera here.
//now draw the boxes
for(int i=0;i<boxes.length;i++)
{
pushMatrix();
translate(boxes[i].x,boxes[i].y,boxes[i].z);
box(90);
popMatrix();
}
}