Animando imágenes en Plymouth

Animando imágenes en Plymouth

Estoy intentando animar una imagen para un tema de arranque de Plymouth personalizado. Puedo hacer que el objeto se mueva en incrementos de píxeles, pero no se actualiza lo suficientemente rápido como para funcionar sin problemas. No entiendo muy bien el truco para actualizar la pantalla en ciertos intervalos de fotogramas. El código que tengo se ve así:

wallpaper_image = Image("Win95.png");
plane_image = Image("paperairplaneShadow.png");
screen_width = Window.GetWidth();
screen_height = Window.GetHeight();
resized_wallpaper_image = wallpaper_image.Scale(screen_width,screen_height);
plane_sprite = Sprite(plane_image);

wallpaper_sprite = Sprite(resized_wallpaper_image);
wallpaper_sprite.SetZ(-100);

progress=0;
fun refresh_callback ()
 {
    for (i = 0; i < 4; i++){
    plane_images[i] = Image("paperairplaneShadow" + i + ".png");
    plane_sprite = Sprite();
}


plane_sprite.SetImage(plane_images[Math.Int(progress/6) % 4]);
//plane_sprite.SetImage(plane_images[]);
plane_sprite.SetX(progress);
//plane_sprite.SetY(progress);


 progress++;


 }
Plymouth.SetUpdateStatusFunction(refresh_callback);

Estaba siguiendo el tutorial enhttp://brej.org/blog/?p=197. No puedo entender cómo funciona el cambio de velocidad de fotogramas:

butterfly_sprite.SetImage(butterfly_images[Math.Int(progress / 6) % 4]);

El sitio dice que debería colocar la siguiente imagen en la matriz mariposa.sprite (que tiene 4 imágenes) cada 6 fotogramas. En mi script, plane_sprite se actualizará, pero solo una vez por segundo. Cualquier ayuda sería muy apreciada.

información relacionada