Hello Everyone,
I've developed a basic theme able user interface system with opengl by drawing different shapes and text. I want the UI to be used on both mobile and desktop so I only want the UI to redraw when absolutely necessary in order to conserve battery life. So there is no rendering call in the main application loop. The time to paint can be at anytime a UI control believes it requires a redraw.
The issue that I'm having is that I can't figure out how to only draw the Control that needs redrawing. If the control that needs redrawing is semi transparent, the control behind it will need to be redrawn as well due to the fact that the redraw causes an opengl clear in the control's scissor rect, but if the control behind the control that needs redrawing is redrawn, all controls behind that and inside of that will need to be redrawn as well. To the point where I'm redrawing the entire screen every time something changes in one control. This has come to a head where I'm attempting to draw a textbox control and every time the caret blinks I'm redrawing all the controls on the screen, which doesn't seem very efficient.
Does anybody have any ideas or suggestions for ways in which I could draw semi transparent controls sitting on top of each other without redrawing the entire screen?
Thanks,