I remember a few years ago where I programmed a fully functioning GUI with windows, buttons, text boxes, check boxes, edit areas, and virtually any other control you can imagine. I feel your pain.
For what, a game? Btw; What are you doing now (if you don't mind me asking)?
Indeed, a GUI has quite some damn fukkin development overhead. Thank for you
condolence! I appreciate!
I could have done the button much easier, but it
wouldn't be as flexible as I want it to be. The GUI will be used for a game as
well.
I have buttons but none of the difficult controls yet like lists and edit boxes. ...
Me neither. Will do them as needed.
... What framerate is your demo running at? The control is visibly lagging behind the mouse even in the GIF, but that could be related to the demo framerate or vsync. Also are you using a software or hardware cursor?
Hardware cursor. The GUI is lagging a bit, indeed. Framerate is low. The
graphics runs on a device independent (software-) framebuffer which makes my
blitting functions a bit slow due to the overhead involved. I wrote such a
buffer to tinker around with different depths for dithering and playing around
with palettes etc. I basically imitated Windows 3.11 palette driven graphics.
This may seem quite odd doing so whereas the world is quite lucky leaving
palettes behind, but I have a strong need for it. Without doing any recording
the program runs at a suitable speed. Fixing the depth would increase the
speed quite a lot. And there is even hardware blitting available if I want to,
but as I said; pixel control above anything else.
This is primarily for
development. When one works with graphics/framebuffers having different
resolution in space and color, it becomes a bit annoying, indeed. But that's
the deal for playing with retro graphics -- it spans so many scales.
Cool sh!t, man! :+