Démo en cours de développement (from scratch).
Nécessite Java 1.3 ou plus (package javax.sound.sampled).
Mode d'emploi :
- touche 'Entrée'
- start/pause ;
- utilisez la souris pour éclater les objets ;
- augmentez le multiplicateur (barre affichée sous le score) jusqu'au moment critique... ;
- évitez de briser la chaîne et faites des hits multiples pour battre le meilleur score ;
- touche 'x'
- debug info on/off.
La documentation du code est en ligne.
Cette applet contient un grand nombre de techniques classiques de programmation de jeux, dont les plus importantes sont listées ci-dessous.
Graphisme :
- gestion du double buffering ;
- sprites animés (cf. la balle tournante - qui peut changer de sens de rotation) ;
- dessin organisé en plusieurs couches (layers) ;
- un petit système de particules (les étincelles).
Traitement d'image :
- opérations sur les pixels d'une image (inversion vidéo, flou gaussien - cf. ombres des messages "Press Start"
et "CRITICAL"
);
- zooms et rotations d'images (ie. transformation affines - cf. les textes "Press Start"
et "CRITICAL"
) ;
- opérations en virgule fixe (pour optimiser lesdites convolutions et transformations affines).
Texte :
- polices bitmap chargées à partir d'images,
(eg. ) ;
- traitement d'image sur les polices bitmap (cf. les variantes de teinte et les dégradés).
Animation :
- animation basée sur le temps ou sur les images ;
- règles physiques sommaires (gravité et rebonds sur les bords) ;
- mesure du temps corrigée (moyenne) ;
- fonction pause (touche 'Entrée').
Sons :
- générateur de sons (stéréos/mono, 8/16 bits, 44100/22050 Hz, big/little endian) ;
- gestion de plusieurs sons simultanés.
Système de jeu :
- gestion du clavier et de la souris ;
- une génération aléatoire d'éléments ;
- un système de score avec hits multiples ("3 Hits Combo!!"
) et multiplicateur ("Chain x15"
) ;
- une gestion basique du meilleur score ("Hi 014680"
) ;
- un système de destruction finale ("Critical reached!!"
).
Debug :
- la touche 'x' active l'affichage d'informations de débogage.