Jump to content

  • Log In with Google      Sign In   
  • Create Account

- - - - -

Yet Another UI Iteration

Posted by , 12 March 2013 · 1,181 views

Goblinson Crusoe rpg turn-based hex-based Urho3D
Today I did yet another iteration on the basic workings of the UI. This one I like. Enough, at any rate, that things are more functional and "official". Here is a video:

Building a game is a very organic process to me. I've never been very strong at all on up-front design, even way back in college when waterfall design was king and my GPA hinged on being able to turn in pages and pages of up-front design for any given project. I just can't see how the parts are going to fit together until I dip my hands in and start throwing around prototype code. I iterate, sometimes quite heavily. (For example, my basic entity framework has gone through probably five major iterations and countless tweaks.) There are always places where I sit back, scratching my head and thinking "Oh, that's not going to work." Similarly, there are always places where I say, "Wow, that worked better than I anticipated." But I just can't see those places during design.

For me, design IS code, which is why I like working in Lua so much. Iterating is so much quicker when you are not bound by static typing and compile times. My free time is pretty limited what with work and the kid, so watching a compile progress window is annoying. Outside of minor tweaks, I haven't had to re-compile my engine in a couple weeks, not since I crow-barred Urho3D into it. Since then, it's all been Lua code, and that makes it go pretty fast.

The drawback to the light-on-design, heavy-on-iteration methodology, of course, is the tendency to spaghettification. However, that can be mitigated by enforcing some guidelines and a little self-discipline. It gets tedious having to dip back into code to "officialize" it once a prototype proves itself, but it's what you have to do to keep your project under control. Dip back in, strip out magic numbers, codify and clarify and conciseify everything so that it fits your overall design scheme, or ten weeks (or months or years, in my case) down the road you will regret it.

Anyway, this iteration of the UI feels good to me. It feels right. The action buttons work (I need to do some more of that officializing, though) and the animations feel fluid and "bouncy". It needs the spellbook/crafting book in order to assign skills to the 4 quickbar slots, though, so that will be my project for tomorrow.

I changed the portrait background from the soft black alpha-blended square, so that Stormynature wouldn't be confuzzled anymore. I might giantify one of the enemy goblins at some point, though, just for him.

Good work sofar, I really like the gui animation.


One tip, don't try to make a painted gui. Once your gui grow, you will change your view about your gui, or you change the appearence of the rest of the game and suddently you are in a racing condition, always unsatisfied with the gui and trying to fix it all the time. I would sugguest to use a very limited gui representation (e.g. half transparent, black backgrounds, rounded edges etc. and only some icons ontop of it), a representation you can quickly change, because you will change the gui all the time :)


A good example is TF2.

Great work so far! Cool how fast you are progressing!!

@Ashaman73: That is generally good advice. In this case, I'm not really spending any time on look, just reusing textures and materials that I've done for other things. I haven't rendered any GUI stuff now in months. All of my efforts have just been on the back-end.

@MARS_999: Not very fast at all. I usually only get an hour, perhaps two, a day to work on this, and that is usually pretty interrupted. If I'm at work, I have to weasel it in between projects, customers and phone calls. If I'm at home, the kid is always clamoring for at least part of my attention. I figure that, at this rate, the game will be done sometime in 2033, assuming I don't drop it before then. The dream of doing indie games on the side seems further and further away as time goes by, and I've just about accepted the fact that it'll probably never happen. But it does give me something fun to do as a brief diversion, to exercise my brain.