[Kde-games-devel] Proposing KGameRenderer

Stefan Majewsky kdemailinglists at bethselamin.de
Sat Jun 12 23:33:53 CEST 2010


On Saturday 12 June 2010 19:31:27 Luciano Montanaro wrote:
> > KNewStuff3 is in 4.5.
> 
> I know, but are all the games that could benefit from it currently using
> it? I have not had the time lately to follow kdegames development, but I
> understand there could be low hanging fruits there.

From what I saw on kde-commits, all games using KNS2 have been ported to KNS3, 
as well as KGameThemeSelector. (Ask Frederik Gladhorn if in doubt, I think he 
did the conversion.)

Concerning those games which currently do not use KNS at all, these probably 
have a good reason to do so, because using KNS is pretty simple. (Adding it 
boils down to changing one flag in the KGameThemeSelector constructor, and 
installing a four-line knsrc configuration file, and creating a corresponding 
repository on kstuff or similar.)

> > The rewrite of KDiamond towards KGameRenderer made the animations so
> > quick that I'm actually thinking about adding cooler animations.
> > "Animatability" is something which is very much related to the rendering
> > efficiency.
> 
> That's good. It's a game, it has to be entertaining. I do not know how
> kdiamond handled the animations before your change... surely it did
> not use svg directly?

There are two types of animations in KDiamond: Simple movements (when diamonds 
are swapped or fall down) are just QGraphicsPixmapItem::setPos. The 
"explosions" of removed diamonds are stored in the SVG as multiple frames.

The advantage of KGameRenderer and KGameRenderedItem is that these classes are 
directly able to handle sprites with multiple frames. This considerably 
reduces the complexity of the animation code in the game engine.

> >> - in game Tutorials
> > 
> > Yes, I'd like these, too.
> 
> Well, not every game needs them absolutely, but they are a nice touch,
> if we can do them. For some game, it would be sufficient to have a
> bubble explaining why a certain move is forbidden when the player
> clicks on the wrong tile.

I think tutorials can be good for each game. For example, if one starts up 
KDiamond for the first time, there could be a small speech balloon somewhere 
in the corner saying "Don't know how to play this game?". (Perhaps it could 
only appear after a phase of inactivity, or blink or something to make sure it 
is noticed. That needs to be tested.) When I click on it, it gives me a 
compact step-by-step explanation while I'm starting to actually play the game.

> Yes, many games are ok, but I think some are still too complicated to
> setup, and are descouraging to potential players.

I think much of this can be solved by tutorials. (I remember how I opened 
KBlackBox for the first time and closed it only seconds later in total 
confusion.)

> In particular, I had a bad memory of KSirk...
> I just tried it again; it's better than I remembered, but there are
> still many roadblocks for the potential player.
> I can compile a list of them if needed.

Shouldn't b.k.o used to track these issues?

Greetings
Stefan


More information about the kde-games-devel mailing list