Jump to content
Sign in to follow this  
  • entries
  • comments
  • views

UI Overhaul

Sign in to follow this  


UI Overhaul

Don't you love it when you fix a bug that's been haunting you for months (and in this case, I mean the better part of a year)? For some reason, I could change the game resolution a few times, and them boom - nothing I rendered would show up anymore. I tried everything - I put in full GL error checking (which just told me there was a GL_INVALID_PARAMETER somewhere, but given the exact same error popped out when the thing worked, it didn't help much), I made sure all my matrix stacks pushes and pops were matched up, I made sure I was releasing and re-creating all my context managed objects, etc, etc. After a week of banging my head against it, I resigned myself to the bug - which has for the last few months forced me to restart my game periodically.

Well, 5 minutes ago, I found it. My camera objects only re-submit their matrices when they're moving. And so if the camera happens to be static for the first frame after a context switches, it would render using an uninitialised camera matrix. No big deal I thought, the next time the camera moves, all will be ok. Wrong - on OSX for some reason, as soon as you get this kind of error, the GL context hoses itself - and nothing will ever render properly using that matrix again .... Even after you set it to a sane value.

With that off my chest, let's talk UI. And if you think UI is boring, blame Ravuya. You see, I took a look at Glow for the first time a few weeks back, and I was blown away by the presentation. It's glorious. I think I spent more time admiring the nice flickering logo effect and cool menus that I did playing it (which isn't saying anything bad about the game - just how sexy the front end is). At the same time, I'd be reading some developer diaries and post mortems where they all seem to say 'we'd love to release the game/level editor, but there are lots of bugs, it's really hard to use, you have to know lots of black magic to get it to work, etc'. And together, these made me think 'I'm going to be using my game authoring tools for the next few years - so why wait until the very end to make them easy to use?'. Not only will authoring my game content be easier, but I'm hoping a nice editor will make me more productive, and hopefully allow me to let others create some content too.

Firstly, I knocked up some new tool icons for my built-in editor, and knocked up some flavour-of-the-month radial menus:


Next, I fleshed out all the map management code, including the ability to create a level from scratch, load and save maps, all without typing a line of script. I even threw in some user-friendly dialogs that let you know when things worked (or didn't as in the case below):


Not very exciting I know - but it does make my life a lot easier.

The next step (which I'm in the middle of right now), is allowing you to edit the objects in the game. Again, not exciting from a game play perspective, but I'm actually really stoked with how it's turning out.

Sign in to follow this  


Recommended Comments

I'm also hoping to make a nicely useable level editor with my dinky little project - that's actually a core objective. I think spending a bit of extra time to make the edtior nice will benefit the internal level designers (even if that's just you) as well as the players.

I like the look of your GUIs buttons too. One small nickpick; unless your game is about cows you only spell "Move" with one O [smile].

Share this comment

Link to comment
Hehehe - the Moove is intentional! The game is about cows, but that's actually not where it comes from. My favourite drink growing up in Australia was called "Moove" (Vanilla Malt Mooves to be precise), and I've been mispelling it in my game code as a little homage for years =)

Share this comment

Link to comment

I am so totally not used to graphical compliments, although I did spend a while polishing up the front-end UI. [grin] It's much, much better than the editor UI, which is kind of touch and go at the best of times.

And good god your UI is even sexier. That dock... *drool*

And I really like the Moove command. Will your group-object command be called Herd?

Share this comment

Link to comment
Hahahah! I so want to find a reason to have a group command now just so I can name it Herd! I might have to bring you in as a consult on some of my other tool and menu names.

I guess at a pinch I could call the array tool Herd and then the loop tool (which you use to drag walls around things) could be Corral =)

Share this comment

Link to comment
I think the proper user interface snob name for the loop tool is "lasso," so that's already cow-themed.

I could imagine a couple of interesting names for the delete commands too.

Share this comment

Link to comment
Heh, I thought in the back of my mind as I posted that there might have been a connection with "Moove" and your nickname [grin].

Share this comment

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!