As it is now, each frame is drawn all anew over and over again. And as we see with the improved memory controller and the efforts to batch drawing calls and instance objects, I think the next step to offer improved frames and speed would be to upload the whole scene once, and send only the modifications afterwards.
As it is, GPU's display single pictures in sequence as fast as they can, they have no notion of the whole scene. Drawing calls and calculating the same things for every frame are expensive. With the shaders to handle calculating the actual color, they might be the most expensive thing in terms of speed, and thus in the highest quality of the frames archievable.
With all the talk about doing real physics, you need to have the whole scene uploaded and processed to some dedicated hardware anyway, which needs to output new geometry, textures and lighting calculations to the renderer. Why not have the GPU do all that? And when it does, it can optimize everything so much better.
As it is, GPU's display single pictures in sequence as fast as they can, they have no notion of the whole scene. Drawing calls and calculating the same things for every frame are expensive. With the shaders to handle calculating the actual color, they might be the most expensive thing in terms of speed, and thus in the highest quality of the frames archievable.
With all the talk about doing real physics, you need to have the whole scene uploaded and processed to some dedicated hardware anyway, which needs to output new geometry, textures and lighting calculations to the renderer. Why not have the GPU do all that? And when it does, it can optimize everything so much better.