Today I created a user interface with the GUI middlware I have chosen. I read all tutorials and documentation on the middlware’s website and after that I created a few buttons and a window with some text and a slider. After that I made the GUI resolution independent; a few important feature that needs to work correctly. My opinion so far is that the workflow is pretty good and everything works as it should. The documentation is somewhat scarce beyond the basics, so the creator could improve on that, but most features are self explanatory so it’s not too bad. Generally I’m satisfied with the middleware!
I tested the game with the GUI on a mobile and a tablet and did some profiling: so far the performance is good and the entire GUI is drawn in 1 drawcall.
After this I’m going to look into the best way to control the UI from code. The user interface will be partially static (pre-made) and partially dynamic, so I need to check what the best way is to create the UI from code. Ideally the code in the domain classes should not be aware of the GUI, so I need to set up a smart system with delegates, events and interfaces to make sure they’re loosely coupled. I won’t do too much work on this though, as the gameplay can still change quite a bit and I don’t want to set up this great generic loosely-coupled system that will be thrown away later anyway.