I keep getting asked what GWEN is – so here’s an explanation. GWEN is a GUI Widget Toolkit, aimed at video game developers, with the emphasis on being small, simple and easy to integrate.
We decided to make our own because the solutions that are out there right now don’t fit with our requirements. The top runners all had one major problem. They weren’t ‘just’ GUI toolkits.

We basically wanted something that drew a GUI where you told it to and you could fire input into it. Most solutions that are already out there come with too much baggage. Font renders, XML parsers, HTML renderers. It’s all too much, they force you to do it all their way. All you want to do is draw rectangles on the screen that people can click on!
We tried to KISS with GWEN.
To get GWEN drawing in your game you have to fill out the renderer class. Which at the minimum consists of a function to draw rects and a function to draw text. We already have renderers for GDI+ and DirectX9.
To get GWEN receiving input you have to chuck stuff at it’s input class, things like key pressed, mouse pressed. We have one of these already made for Window’s MSG pump.
The skins are a c++ class that you derive from.
So that’s what GWEN is. Right now it’s mostly finished. We have most of the controls we want – but we’re using it internally (like in the editor above) to iron out any problems before releasing it. It’ll be open source, released under MIT.
this shits bananas
Where can i get Gmod 9?
Nice first comment grab you have there.
Also, this is looking pretty nice!
This is fantastic!
Keep up the great work.
GWEN is Guild Wars Eye of the North
gwen tennisson
KISSing GWEN is what makes this worth considering implementing.
It ought to be fun porting this to XNA!
It ought to be fun for you to SHUT THE FUCK UP.
^^What?
Nice program though, can’t wait to see it when it’s done!
Looks awesome. I always tend to write my own GUI system out of annoyance of the existing systems, but it takes so much time out of my projects.
If you’re looking for anyone to port it to OpenGL / OpenES, I’ll volunteer
I might take you up on that eventually
All hail Garry the coding king.
I’d be up for making an SFML wrapper for this (well, if you can call filling out your renderer class a wrapper)
What about Direct2D / DirectWrite? GDI+ is a bit aged at this point.
The whole point is that you can integrate it with pretty much any renderer. You’re not just limited to GDI+ and DirectX.
Amazing work!
Though i have to say im a bit suprised Garry knew that open source is great.
I like how you will release it under an opensource license, all coders here (including myself) will be learning alot from it.
Can we get a screenshot of how the API looks?
A screenshot of code?
Yep.
Actually, I just had a better idea. Doxygen it, and then just post the WIP API online.
You tried to KISS with GWEN?
Man, those acronyms are really something!
Real Life – stuff I did, or saw, or heard about in real life. plx0r
This is why I read your blog. This kind of stuff is really interesting. Plus you’re awesome for being open sourced about all this. I’m glad you read our comments, as well. I hate articles/blogs/anything with comment sections that mean nothing.
What can you say? Everything Garry does shines.
This is a very good blog. I like it. This kind of stuff is really interesting. Plus you're awesome for being open sourced about all this.