I am making a lot of progress on my GUI port.
I am somewhat stuck on one issue and I'd like to hear what you all think about it.
In OpenGL, the Y axis is inverse relative to most GUI coordinate systems that I've used. In other words, the Y values get larger as you move from the bottom of the screen to the top.
Most GUI systems use the top left as the origin (0,0) for widget locations.
Obviously, I need to make an adjustment somewhere to account for this. My question is where? My current choices seem to be.
1) Build the whole system with a bottom-left origin. As this is most native, I would think things like mouse picking and gui events would be the simplest and fastest to compute.
2) Build the GUI system with a top-left origin and convert the coordinates when I construct the vertex arrays.
3) Build the GUI system with a top-left origin and convert the coordinates in a shader.
Is there an established "best practice" for this?