Saturday, 11 October 2008

Making films in GCompris

I wanted to make a film in GCompris recently. GCompris is an educational suite for children.

There is an animation program in the suite and I wanted to integrate my own characters (the set included is limited). There is a directory with a Readme file which says: All custom images in here.

Well: I can put custom images into this directory. The software stores animation sequences into this directory as well. So far so good.

Unfortunately, I cannot add my own characters to the application or my film for that.

I'm still looking for a way to add my own characters to the film. Keep you posted (appreciate hints all the same).

PS: Tyler has an important hint on how to do this. I think it's worth for everyone to read his comment. Tyler, thanks.

1 comment:

Tyler Mitchell said...

Hi Wolf, I've figured this out and thought I better write it up somewhere :)

You can save your images anywhere you want, but will have to create an XML file to point to each image. It will also point to an image to use in the menu for each "set" of images. Then you just have to make that XML file available to gcompris in its dataset folder:


That's the short answer. Here's what I specifically did.

Stored files in my user folder with my other pictures, since the kids like to edit their own :)


Create an XML file:


Have a peek at an existing XML file to see how it is to be laid out, e.g.


I then link the image folder and the XML file into gcompris' default locations:

ln -s /home/spatialguru/Pictures/gcompris /usr/share/gcompris/boards/gcompris/spatialguru

ln -s /home/spatialguru/Pictures/gcompris/spatialguru.xml /usr/share/gcompris/boards/dataset

That does it! My usual mistake is in bad XML syntax (I always forget the closing /> in Image element :)

My kids use the GIMPs scissor tool to clip out the important parts of their image, then I have them save the image scaled down to maximum 400px wide.

Hope this helps someone. I should get around to writing it up in a blog post myself sometime.