Generalizing interfaces and interaction with QGraphicsItems across form-factor boundaries

Stefan Majewsky kdemailinglists at bethselamin.de
Mon Aug 16 23:16:12 CEST 2010


Hi,

because some people on plasma-devel@ might not know me yet: I'm a member of 
the kdegames team, and am posting to plasma-devel@ for the first time because 
my work may have to do with what you folks are doing. (This implies that I'm 
not subscribed her, so please CC me or kde-games-devel@ in answers.)

The reason why I'm writing this is because I started work on libkgame, a 
collection of libraries which shall, at some point, supersede libkdegames 
which is currently used by most games in the kdegames module. In the 
beginnings of the design process, I've identified as a main weakness of our 
applications the fact that they are designed for mouse and keyboard 
interaction and for desktop form factors. They do not scale to the mobile 
form-factors which are becoming increasingly important in casual gaming.

Most of our games are QGraphicsView-based, and I know that the Plasma 
community is the home of some of the greatest QGraphicsView experts on our 
lovely planet. Plus, many of you have experience in interface design on 
constrained devices.

I would like to invite you to thinking about, discussing and designing a 
general set of interface components for games which can be used on mobile 
devices instead of the usual WIMP controls. The ultimate goal is a UI system 
which allows the game developer to develop in one working step an interface 
that works both on the desktop and on mobile devices. Think XMLGUI on 
steroids. This effort should also cover input methods, in order to make it 
dead-easy to integrate multitouch support in existing applications.

Of course, this need not be limited to games, but could be generalized to 
arbitrary applications. I doubt, however, that this is possible because games 
with their full-screen application-styled canvases have their own distinct 
requirements.

Not only am I interested in your thoughts on how such interfaces (or library 
classes) might look like, I'd also like to know whether there are existing 
components which might be reused. From what I know about Plasma (and that's 
admittedly not as much as I would like), Plasma is too high-level for what I 
need. It's not about creating applets for different services, but about 
arranging buttons and score displays. But please, correct me if I'm wrong.

Greetings
Stefan


More information about the Plasma-devel mailing list