Jump to content

A brand new GUI System


Recommended Posts

After some massive refactoring work of various Manic Digger Components a new gui system has sprung to life \o/
The refactoring included consistent use of xyz axes, threaded server components, new chunk loader, terraingen rewrite, refactor server api system, inventory rewrite, embedding of a new graphics libary and more.

While programming the gui system I drew inspiration from two main sources: World of Warcraft and HTML+Cascading Stylesheets, the latter is used to neatly format what you are looking at right now ;-)

The main idea is that the player can have any quantity of dialogs opened simultaneously. Just like in WoW where you can open up your character screen seperatly from your inventory. These dialogs consist of individual elements that can be either freely or automatically placed using alignments, paddings and margins. This allows me to quickly cobble together many different guis from a fairly small set of elements, because I really can't be bothered fiddling around with positioning everything by hand if I don't have to. All of the GUI System is coded from scratch using just a basic drawing library named Cairo. I generally shy away from using large libraries/frameworks (like Unity) and try to code as much as I can myself. 

Below screenshot show the very first version of the creative inventory. Already complete with scrollbar and search function. In the background you can also the first few steps towards terrain generation have been made already.

Beyond that, it can also render fancy switches (please ignore the messy element positioning ^_^;)


Up next: Trees, Fog and Water





View full record

  • Like 1
Link to comment
Share on other sites

  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.