Dan Leinir Turthra Jensen, when not solving interoperability problems between Open Document Format (ODF) editors at KO GmbH, spends his time developing GamingFreedom.org: a gaming orientated social network which promotes Free culture, and Gluon: a full featured modern game engine, based on the Qt framework. Dan describes the aims of these exciting projects, and discusses what Free Software could mean for gaming in future.
Chris Woolfrey: Can you explain what GamingFreedom.org is, and it’s relationship with Gluon?
Dan Leinir Turthra Jensen: GamingFreedom is a social network for makers and players of games, based on the concept that there are very few people who make games who don’t also play them. So, rather than view game distribution as a way of pushing a product to the users in order to make back the money that was invested, GamingFreedom views it as a social thing: you have an idea for a game, you build that game, and you distribute the game to some repository, which in our case is GamingFreedom.org. From there you can download the game and play it, and you can then provide feedback if you want; through ratings, commenting, even user submitted screenshots and other such things.
Gluon comprises the technologies we have created to support these concepts; a set of libraries and applications which support you all the way through this. And, interestingly, there’s basically nothing like this out there right now which does this in a general way. Bits of it exist already, but there isn’t anything else that connects it all. That is, with Gluon, once you get the idea for a game, you just open up Gluon Creator and use that to build the game. Once you’ve got it playable, you go to the publishing pane in Gluon Creator and publish the game directly from there. No need to package it up manually and such and upload it to a website: the tool does that for you.
“you can download the game, play it, and provide feedback through ratings, commenting, and screenshots”
Gluon Player is then the collective name for a set of applications on a bunch of different platforms and form factors: Gluon Player Touch for tablets and the like, Gluon Player for the desktop, Gluon Player Mobile for touch based smartphones. These apps all connect to GamingFreedom.org and let you both download and play the games uploaded there, but also comment on them, rate them, even donate to the people who made the game if you think that they’re deserving.
Back inside Gluon Creator, the author of the game then gets this information showing up in the publishing pane – which is a sort of Gluon Player just for a single game – and thus, the circle is complete.
CW: So part of playing Gluon-based games is being involved in what the game becomes through a peer review process?
DJ: It’s still based around being a team who creates a game, but Gluon makes it much, much easier to get feedback from your users and such. And the creation part of it is something else, which is what we’re gearing up towards now. Building the games is something where we provide a whole lot of functionality, basically everything that can be done without knowing the concept of the game; things like rendering sprites on screen, input handling, game UI, all that sort of stuff. All of that can be made ahead of time, and then put together using Gluon Creator. This allows games to be created entirely using non-compiled assets including textures, sounds, vertex and pixel shaders, javascript for game logic, and so on.
CW: It’s in many ways a model inspired directly by the way Free Software (FS) works, right?
DJ: It is indeed. We even suggest that people use one of the creative commons licenses for games they create.
CW: Do you find that people generally use permissive licenses for their Gluon games? The Gluon game development process and copyleft would seem to be a good fit.
DJ: The project is still much too young to really know that, I’m afraid; I suspect we will know more about that in a year or so. Currently we’re gearing up to the second alpha release, named Electron, in which Gluon Creator is at a level where games can be made in the way we envisioned, and the next release cycle is about the distribution system. The applications for playing Gluon games are already well under way, and as our distribution site is based on openDesktop.org, that already exists, but the next release cycle is focused on getting it all done up as the vision describes.
We’re aiming directly at products like Steam and Impulse. Not so much at ModDB’s Desura, as they already have something of the mentality.
CW: What other technology are you using to build this stuff? You’ve already mentioned openDesktop.
DJ: The overshadowing technology is Qt, which is what gives us the enormous list of possible target platforms, but we’re also wrapping OpenGL and OpenGL ES for GluonGraphics, plus OpenAL in GluonAudio. We’ve got a game specific input library called GluonInput which is based in part on Qt’s input system, but also has early support for various more gaming-friendly inputs like joysticks and visual inputs and such. Finally, for custom game logic we’re using QtScript, which is an ECMAScript based scripting system, and the Qt Quick UI system for in-game UI, which enables the makers of games to create very advanced UIs in their games, instead of just those simple menu-upon-menu formats you see in a lot of places.
CW: It’s great to see that Gluon is 100% Free Software. Was that decision taken for practical or philosophical reasons?
DJ: Well, a bit of both, as well as tradition. We’re all members of the KDE community, and there’s a strong Free Software tradition there, so it was the natural choice really. But also because GNU Lesser General Public License allows potential users to use our code even if they might not be so interested in being entirely ‘libre’ themselves, and this is something the game developers of the world traditionally have had big problems with.
“Gluon games can legally be licensed any way they want”
That said, because of the way the engine works – it’s a lot like a document in a word processor or a 3D graphics suite, being entirely assets and distributed like that – the games can legally be licensed any way they want, which is something we have been quite keen on emphasising. While we strongly suggest that people follow the Free licensing schemes, the makers of Gluon games are able to choose any license they see fit for their game. We feel strongly that this freedom is as important as that of the players of games – as long as they are informed of their lack of freedom in any particular license of a game they choose to play, which we can provide information about through the players and through the GamingFreedom.org site.
The Gluon development team feels strongly about protecting the freedoms of all our users.
CW: Are you a gamer yourself?
DJ: I have always been a little funny when it comes to games; I’ve always much more enjoyed looking at other people gaming than actually playing myself. I’ve watched many an hour of StarCraft, and though I’ve certainly played a few hours of CounterStrike and Unreal Tournament 2004, I have probably watched many more hours of it. This mostly happened at the computer club Boxen, which I helped set up in a small village in Denmark a decade or so ago.
CW: So for you the GamingFreedom.org and Gluon projects are more about the philosophical and political aspects than about gaming itself?
DJ: Well, it was certainly part philosophy. As a part of the KDE community it is something I feel strongly about, and with the success of the Humble Indie Bundle 1 and 2 in the last couple of years, we suddenly saw a good few more FS games being released, because they released some of the games from those two charity packs under the GPL.
It struck me that at least on the indie scene Freedom is becoming a popular thing, and we’d like to help with that. But we also saw an opening; like I mentioned earlier, nothing like the GamingFreedom network really exists right now. Each part of it exists, but the whole thing, the connected from end to end thing and back, that doesn’t exist anywhere else right now. There’s something under way from the Sauerbraten based CubeCreate team, but we believe we may have something different to offer on that account. While Sauerbraten lends itself well to a certain type of game, Gluon was specifically designed without any particular type of game in mind; it was made to be as generic as possible.
CW: Do you think that gaming, which tends to move fast with new technology, is currently in need of something Gluon?
DJ: Yes. So many things are happening with games; not so much in the triple-A scene, but more in the indie scene, which we hope we can tap into, and Gluon is built to allow them to ignore the issues of porting between various platforms, because we’re doing that work for them.
“we hope to tap into the indie scene; Gluon ignores issues of porting between various platforms”
In the non-Free world something like this exists on the creation side: Unity3D, the interaction methods on which some of Gluon’s concepts of game construction are based, but in the Free world, it’s sorely lacking. Game engines such as LOVE2D are all very well, but when a tutorial begins with “Start up your text editor and write this code”, you’ve already decoupled a great many people who will never look at you as an option again. It’s a sad but true thing, really, and for many of these engines, distribution is of course also a problem; you have to package up your things manually and then find somewhere to put them. With GamingFreedom we’ve already got that ready.
CW: Which means you’re definitely appealing to techies and non-techies alike. It sounds like a very exciting project, and it further draws comparison between FS and the Arts.
DJ: We’re trying to, yes. Glynn Moody gave a keynote speech at the Desktop Summit in Gran Canaria, and he argued that Free Software is a lot like the liberal arts. I hadn’t thought of that before, but I could not agree more. It helped me explain to people why I do this whole geeky, coding thing. I can simply say this is my painting, or my gardening, or my singing.
CW: Do you see your work with KOffice as being related to that?
DJ: Not exactly. Calligra, which is the new name for KOffice, is more a WebKit type thing; it’s basically an office engine, which allows you to write office applications. There are at least two different ones right now, and there’s more under way; it’s slowly finding its way into the minds of developers around the net that they need something different to the monolithic codebases of LibreOffice and its like. They’re great applications, but that is also their problem – they are applications, and thus not really suitable if you want to build something like a viewer or something which just reads meta-information out of ODF files.
For me, I guess that Calligra is more an example of how working with Free software has helped me find a fulfilling and challenging job with people I already worked with on other things. All of KO’s employees are members of the KDE community in some way or another, and I got hired as a result of working with Arjen Hiemstra on Gluon; he recommended me for a position with KO.
My job straight out of university was working with Frank Karlitschek on Project Bretzn, which is a connection between IDEs, like Qt creator, build services like OpenSuse’s, and distribution sites like openDesktop.org’s network. When that project ran out of budget after six months, we went to FOSDEM and presented the results to a room full of excited Free software enthusiasts, which felt like a really great way for me to exit the project, which is of course still going on. Now, the Bretzn project came out of my work on Gluon, so I guess there’s something like a red thread here.
CW: As there always is in the Free Software community. Isn’t that its beauty?
DJ: Ah! Well, it’s the Six Degrees of FS!