It comes from 3D gaming and hardware acceleration.
In 3D you use hardware acceleration that is 100-200 times more energy efficient than drawing in the CPU. But you loose flexibility.
It is actually way cheaper to actually clear the screen and redraw it again each 1/60 of a second than to complicate the design of the drawing.
If you make it complex, the GPU could not draw it, because the GPU is not flexible, so only the CPU could draw it.
With GPUs, those tricks do not make sense at all.
In the past, there was a lot of optimization for things like drawing windows on the screen, things like circular buffers, "happy ideas" everywhere that made it efficient in the CPU at the expense of complexity, that the CPU could handle.
Imagine solving a mathematical equation. With matrices we fill a table with zeros that represents the elements of the table that do not exist. This is inefficient, but with a matrix a machine can solve it automatically without "thinking".
Immediate Gui uses the same concept, it draws without caring for last frames or states, making it way simpler.
In 3D you use hardware acceleration that is 100-200 times more energy efficient than drawing in the CPU. But you loose flexibility.
It is actually way cheaper to actually clear the screen and redraw it again each 1/60 of a second than to complicate the design of the drawing.
If you make it complex, the GPU could not draw it, because the GPU is not flexible, so only the CPU could draw it.
With GPUs, those tricks do not make sense at all.
In the past, there was a lot of optimization for things like drawing windows on the screen, things like circular buffers, "happy ideas" everywhere that made it efficient in the CPU at the expense of complexity, that the CPU could handle.
Imagine solving a mathematical equation. With matrices we fill a table with zeros that represents the elements of the table that do not exist. This is inefficient, but with a matrix a machine can solve it automatically without "thinking".
Immediate Gui uses the same concept, it draws without caring for last frames or states, making it way simpler.