Much of my game development can be described as “rapid prototyping”. But what’s not rapid is GUI. It’s a basic rule of thumb, that when I add a mechanic or value to my game prototype, I must then budget more time to create the GUI that exposes that feature to the player. And, despite my raft of helper functions that make GUIs a bit easier for me, it’s a hand-creation process that always takes time, especially if I want it to look pretty.
What if the basic variables that were members of a game object were smart enough to display themselves? What if you could have a member function called
::DrawMyData(RECT screenRect), and it would just magically draw all the important data of the object? And it drew the data in an intelligent way, giving more space and color to the most important data? And it did so no matter what size or shape of bounding rectangle you gave it?
Is it possible? Sure, but there’s lots of little details that would have to be worked out and coded.
Is it useful? Perhaps for lone-wolf rapid-prototypers like me, but for everyone else? I don’t know.
Assuming the idea would be useful, I’d like to explore the concept, from both coding and aesthetic perspectives, with an interested group.