ThinkBoxly is the personal developer blog of Lucas Chasteen, author, programmer, artist, and always learning. Read more

Monday, March 28, 2016

Edge Engine Progress Report - March 2016

It's been a quiet month for ThinkBoxly, but don't let the silence fool you: things are ramping up behind the scenes for some really big projects set to be revealed throughout the rest of the year, not limited to but certainly including Edge Engine. As it stands, most existing modules have matured to a point where all essential features have been added and all known bugs have been corrected. In fact, the month of March marks an important milestone for Edge Engine as the first month since the engine's launch in late 2014 to see no module updates at all. But you'd be sorely mistaken to think that I'm simply resting on my laurels--rather, I've been hard at work on Edge Engine's most ambitious (and most-delayed) module yet: Edge UI.

An early, working test of an Edge UI window. Demo text not final.

If you've followed Edge Engine for very long, you've no doubt heard the name Edge UI thrown around a bit with nothing of it ever materializing. The challenges of creating a good user interface are many, and so as you can imagine, the challenges of creating a user interface engine are even greater. Edge UI actually first entered development a full year ago and even went so far as to hit an early alpha state, but while creating this alpha was an educational experience one of the things it taught me was that my original design plans for Edge UI were lacking in several respects and required serious reconfiguring.

Thus, in the months since, while I have spent most of my time working on updating published Edge Engine modules to ensure each is a stable and useful product, I have also spent a great deal of time simply planning out what Edge UI will be and how it will be used. This turned out to be by far the most complex design process I've ever done. What are the most basic components of a user interface? How can they be broken down into scripts that are simple to use and fit within established Edge Engine syntax and programming style? It is my goal to create a comprehensive, polished user interface solution suitable for any genre of game, and nailing that formula is a daunting but rewarding task and is now well on its way to publication.

But 'well on its way' still leaves much to be done. There's still no release date for Edge UI, but ultimately that's not what matters. What matters is getting it right. That's what Edge Engine has always stood for, and I hope to uphold that core value moving forward--and bring Edge UI to the world as soon as possible. Stay tuned!