Balls, balle rebondissante version objet.


Description

Bah oui, j'ai plagié la source de Dam_neo ... mais c'etait dans le but de l'ameliorer.

donc voila, ce programme ne sert a rien, mais il permettrat a tout les debutants de voir
comment on peu créer une classe (un objet) a partir d'une chose qui n'en est pas un
au depart.

ici, on as donc des choses trés simple, un timer, une paintbox et un tableau d'objet TBall (unité BallObj)
tout cela pour animer une cinquantaine de balles colorées.

J'ai repris réellement le source de Dam_neo, puis j'ai simplement ameliorer les divers algorytmes et methodes.
bien sur, cela vas sans dire que cela n'enleve pas l'interet de sa source. j'ai eu l'idée de le faire
exprés pour lui, pour lui montrer un chemin possible en delphi pour qu'il puisse lui aussi progresser.

Cet exercice de style fait donc appel a ces techniques :
Dessin sur canvas
Utilisation de la PaintBox
Utilisation d'un timer d'auto-animation
Calcul de position par trajectoires
Verification de collisions (objet sur limite de zone)
Optimisation des performances par strategie de parametres précalculés et d'appel des methodes.
et quelques autres petites astuces utiles.

Nouveautées :
Utilisation de sprites bitmap (j'avais prevus pour les PNG, plus simple pour la transparence mais tout le monde n'a pas la PNGLib qui devrait etre obligatoire!)

Sources largement commentées en mode comment, pourquoi, parce que. :)

Conclusion :


Merci a Dam_neo pour sa source qui a inspirée celle ci.
Comme quoi, meme a mon niveau on peu trouver de l'inspiration chez les debutants. ;)

Mon code reste accessible aux debutants desireux de se mettre a la creation d'objets et soucieux des optimisations.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.