begin process at 2010 02 10 03:22:20
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > JOYEUX NOUVEL AN À TOUS !

JOYEUX NOUVEL AN À TOUS !


 Information sur la source

Note :
9 / 10 - par 2 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Classé sous :bitmap, physique, thread, son, DirectX Niveau :Débutant Date de création :31/12/2008 Date de mise à jour :03/01/2009 14:55:51 Vu / téléchargé :1 835 / 303

Auteur : Bacterius

Ecrire un message privé
Commentaire sur cette source (41)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Bonjour !
Joyeux Nouvel An à vous tous !
Je vous présente cette source, que j'ai peaufinée depuis le 27, date de sa conception, enfin bref.
Voilà un feu d'artifice : mais pas n'importe-lequel : comme ceux qu'on peut voir dans les petits villages (je ne parle pas des feux d'artifice de Tokyo ou de Pékin ^^), avec 4 bouquets finals - finaux ? - possibles.
J'ai repris le moteur de son DirectX Sound proposé par Fabiin dans sa source "Feux d'artifices", et j'ai étudié le tutorial sur les Threads de GrandVizir, pour élaborer ce projet.
Voilà ce qu'il offre :
- feux d'artifices d'un nombre quelconque, avec des éclats d'un nombre quelconque.
- deux modes d'affichage différents : le mode long (une longue trainée - de longueur paramétrable - derrière l'éclat ou le feu) ou le mode court : juste un pixel !
- gestion des FPS
- gestion du son par DirectX Sound Engine
- gestion d'un thread
- gestion d'une physique (plus ou moins douteuse toutefois)
- gestion d'un écran de veille reconnu par Windows

Et pas mal de choses encore ...

Bonne année à tous !

PS : pour un effet optimal, lancer le prog 11 secondes avant minuit de ce 31 décembre ! ^^


 Conclusion

Voilà, tous critiques, commentaires, conseils, remarques, etc ...

Et bien sûr, une bonne année à tous !

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

31 décembre 2008 16:07:49 :
// Quelques améliorations mineures
31 décembre 2008 16:08:47 :
// Quelques améliorations mineures
31 décembre 2008 16:13:28 :
// Vitesse 14 au lieu de 18
01 janvier 2009 19:21:07 :
// Ajout de l'effet de flou
01 janvier 2009 19:59:44 :
// Ajout d'un nouveau type de feu
01 janvier 2009 21:01:34 :
// Retirement du feu d'artifice fou (qui bouge dans tous les sens) pour de nombreux problèmes - ajout d'un nouveau final - le drapeau français :p
01 janvier 2009 21:04:14 :
// Modification dans la description - 4 finaux au lieu de 3
03 janvier 2009 14:55:52 :
// Mode écran de veille !

 Sources du même auteur

Source avec Zip Source avec une capture UNITÉ DE SUPPORT VISTA
Source avec Zip Source avec une capture GESTION DES "CRASHS D'APPLICATION"
Source avec Zip Source avec une capture CONJECTURE DU CARRÉ DES FACTEURS
Source avec Zip Source avec une capture EFFET VITRE ET THUMBNAILS SOUS VISTA
Source avec Zip Source avec une capture UTILISER UNE DLL INCLUSE EN RESSOURCES

 Sources de la même categorie

Source avec Zip Source avec une capture EFFET VITRE ET THUMBNAILS SOUS VISTA par Bacterius
Source avec Zip Source avec une capture ANAGLYPHEUR OU COMMENT VOIR EN RELIEF LES STÉRÉOSCOPES ANCES... par jfs59
Source avec Zip Source avec une capture DÉFORMER UNE IMAGE AUX DIMENSIONS D'UN QUADRANGLE QUELCONQUE... par FFCAST
Source avec Zip Source avec une capture THREAD ET BITMAP (DESSIN AU CRAYON) par barbichette
Source avec Zip Source avec une capture ÉCRAN DE VEILLE FEU D'ARTIFICE par barbichette

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture ANAGLYPHEUR OU COMMENT VOIR EN RELIEF LES STÉRÉOSCOPES ANCES... par jfs59
Source avec Zip Source avec une capture THREAD ET BITMAP (DESSIN AU CRAYON) par barbichette
Source avec Zip Source avec une capture DECOMPTEUR AVEC ENREGISTREMENT DES OPTIONS par michaelminelli1
Source avec Zip Source avec une capture PRÉ-COMPOSANT D'AFFICHAGE DE TEXTE PROGRESSIF... par blueperfect
Source avec Zip Source avec une capture ANIMATION AVEC PNG par Bacterius

Commentaires et avis

Commentaire de Bacterius le 31/12/2008 13:19:01

Codé sous Delphi 6 !

Cordialement, Bacterius !

Commentaire de cantador le 31/12/2008 14:22:09 8/10

Beau travail Bacterius !
mais un poil trop rapide à mon goût..

Commentaire de blueperfect le 31/12/2008 15:02:03

Comme quoi ya pas que le physique dans la vie

Commentaire de Bacterius le 31/12/2008 15:49:35

@Cantador : on peut régler la vitesse en changeant la vitesse du sleep - bien sûr il faudra adapter les comptes à rebours du final et de l'affichage des informations en conséquence : je vais faire des constantes pour cela.

@Blueperfect : c'est vrai ^^

Cordialement, Bacterius !

Commentaire de Bacterius le 31/12/2008 15:50:25

Ou des variables ...

Cordialement, Bacterius !

Commentaire de Bacterius le 31/12/2008 16:09:17

Et voilà Cantador c'est rectifié.

Cordialement, Bacterius !

Commentaire de Bacterius le 31/12/2008 16:14:42

Bon petit arrangement, vitesse 14 au lieu de 18.

Cordialement, Bacterius !

PS : pour ceux que ça interesserait, si vos FPS descendent en dessous de (Speed x 2), alors vous devriez baisser Speed.

Commentaire de Nicolas___ le 31/12/2008 17:18:54

Salut, dommage je ne sais pas tester ton petit soft (j'ai pas delphi )

Serais tu stp mettre l' url du programme de Fabiin , internet est vraiment lent ici
(j'suis de retour à la campage :[ )
et je n'ai pas le courage de faire des recherches (DirectX sound Engine m'intrigue beaucoup :) )

Joyeuses Fêtes

Nico

Commentaire de Bacterius le 31/12/2008 17:43:51

http://www.delphifr.com/codes/FEUX-ARTIFICES_11799.aspx

Voilà Nicolas.
Quand je dis DirectX Sound Engine je dis juste que c'est un moteur son (en tout cas, nom de classe TSoundEngine) basé DirectX.

Cordialement, Bacterius !

Commentaire de blueperfect le 31/12/2008 19:32:33

Moi, ce que je veux faire, c'est un TSound où je peux lui faire jouer des sons en parralèles, sans DirectX, avec un bruit de moteur pour le fond d'ambiance, et des click click click bip bip bip beedeebeep quand je fais psser la souris d'une zone à une autre !

On peut le faire ou non  ?

Monsieur !

Commentaire de Bacterius le 31/12/2008 19:49:47

Si tu veux jouer deux ou trois sons en même temps, utilise les fonctions de synchronisation de MMSystem :

PlaySound (la première)
PlaySoundA (la deuxième)
PlaySoundW (la troisième)

Je suppose que les sons se chevauchent, et ne se coupent pas. Mais je n'ai pas essayé !

Cordialement, Bacterius !

Commentaire de blueperfect le 31/12/2008 19:53:17

merci

Commentaire de offlake le 31/12/2008 23:42:45

" Sans Commentaires !! "
BON CODE !! et Bonne Année Bacterius !!
BY OFFLAKE

Commentaire de Bacterius le 31/12/2008 23:44:35

Bonne année à toi aussi, à tout le monde d'ailleurs !

Cordialement, Bacterius !

Commentaire de cincap le 01/01/2009 11:04:43

Bonjour à toutes et à tous,

Meilleurs voeux à toute l'équipe et à tous.

Superbe cette source, tout y est sauf un décor de la photo d'un pont ou autres prise la nuit ou le feu d'artifice serait encore plus réaliste.

Fonctionne correctement sur D6.

@+,

Cincap

Commentaire de cantador le 01/01/2009 12:31:37

Avec la modif, c'est nettement mieux !
Peut-être, faut-il étudier maintenant les traces des fleurs (avec un effet de flou, comme dans le source de barbichette)?
...pour le 31/12/09..
ça te donne du temps.

Commentaire de Bacterius le 01/01/2009 14:32:00

Ca va j'ai 364 jours !
En effet, je vais regarder pour voir comment je pourrai m'y prendre ?
Peut-être faire comme un "halo" autour des feux et des éclats, puis appliquer à chaque fois un alpha-blending noir ?
Mais ça va sûrement passer de 35 à 12 FPS :/
Je vais essayer.

Cordialement, Bacterius !

Commentaire de Bacterius le 01/01/2009 14:44:47

Héhéhé j'ai trouvé un moyen : elle est dans ma librairie IMod - mais je vais juste reprendre la routine et la mettre dans le code pour ne pas alourdir inutilement. Et les FPS ne descendent que à 24-25 - en revanche il y a un problème, il faut que je l'arrange.

Cordialement, Bacterius !

Commentaire de blueperfect le 01/01/2009 19:12:18

Moi j'ai opté pour une file de travaux appliqués depuis un thread sur une TPaintbox... Tu peux ajouter tous les effets que tu veux en un clin d'oeil...

Commentaire de Bacterius le 01/01/2009 19:21:44

Voilà j'ai ajouté l'effet de flou - je passe à 25 FPS en haute qualité.

Cordialement, Bacterius !

Commentaire de Bacterius le 01/01/2009 19:22:13

PS : j'ai mis une technique d'amélioration de performances : à lire au dessus de la procédure Blur.

Cordialement, Bacterius !

Commentaire de Bacterius le 01/01/2009 20:02:52

Bon j'ai ajouté un nouveau type de feu - il bouge dans tous les sens lol (en fait ses directeurs DX et DY sont modifiés sans cesse). D'ailleurs ça vient de me donner une idée pour un prochain écran de veille ... des ... des animaux qui bougent dans une flaque d'eau ?

Je dois aussi revoir l'algorithme de flou - celui-ci est un peu trop ... mathématique : en effet, il finit par creuser les couleurs de cette façon :

|\          /|
| \________/ |
|            |
|  ________  |
| /        \ |
|/          \|

Mais c'est logique, mais il faut tout de même que j'en trouve un autre !

Cordialement, Bacterius !

Commentaire de Bacterius le 01/01/2009 21:02:49

Et voilà un tout nouveau final - le drapeau français : de plus j'ai rendu tous les finals compatibles avec un nombre quelconque de feux.
J'ai enlevé les feux fous, trop de problèmes.

Cordialement, Bacterius !

Commentaire de Caribensila le 01/01/2009 22:51:29

Pas encore regardé le code, mais le résultat est super!
Et le son ajoute une sensation très intéressante, je trouve. Je vais regarder ça de près.

Ce n'était pas facile...   Bravo Bacterius!   Continue!

Commentaire de cincap le 02/01/2009 10:44:45

Bonjour à toutes et à tous,

@ Barbichette, as tu déjà vu cette applet :

<APPLET code="jhanabi4.class" width="510" height="338">
<param name="para_bits" value="10000">
<param name="para_max"   value="500">
<param name="para_blendx" value="90">
<param name="para_blendy" value="50">
<param name="para_sound" value="2">
<param name="para_time" value="5000">
<param name="para_back" value="images/pont.JPG">
<param name="para_startx" value="245">
<param name="para_starty" value="360">
  Désolé, il est temps de changer de navigateur (Iexploreur 5 et +)
</APPLET>

Lien : http://www1.jawink.ne.jp/koji-y/java/jhanabi4e.htm

Click sur l'image dirige les fusées, avec flou, sons et image de fond.

Sinon super ta source.

@+,

Cincap

Commentaire de Nicolas___ le 02/01/2009 10:55:14

Ca commence vraiment à être très intéressant , tu devrais en faire un fond d'écran (paramétrable % au constante)  :)

@cincap : je pense que tu t'es tromper de source , ici c'est pas Barbichette mais Bacterius

Nico

Commentaire de cincap le 02/01/2009 11:47:11

Bien vu Nicolas, ah les copy-coller !

@+,

Cincap

Commentaire de Bacterius le 02/01/2009 22:23:30

@Nicolas : d'accord pour l'écran de veille (héhé toi aussi tu confonds écran de veille et fond d'écran ... remarque ça revient au même au fond ... d'écran ^^).

@Cincap : je vais avoir du mal à faire cela avec le flou : en fait le principe de mon flou c'est que :

- je ne remet jamais l'image à 0 (sauf la première fois)
- le flou fait progressivement disparaître toute trace de feu ou d'éclat, en le faisant progressivement mélanger au noir ...

Mais je pourrais éventuellement mettre une image transparente, par exemple de pont (genre village), que je placerais sur un canevas indépendant des feux d'artifices ?

Je vais essayer ça prochainement.

@Caribensila : Merci :)

Cordialement, Bacterius !

Commentaire de Caribensila le 02/01/2009 23:08:18

« Mais je pourrais éventuellement mettre une image transparente, par exemple de pont (genre village)... »
OUAIS !!!  Avec des reflets dans l'eau du fleuve !

PS: C'est rigolo ça... j'suis bourré d'idées quand c'est pas moi qui code (?)

Commentaire de Bacterius le 02/01/2009 23:46:34

Bon ... les reflets ça sera probablement pour plus tard ^^

Cordialement, Bacterius !

Commentaire de Nicolas___ le 03/01/2009 00:49:10

Sinon un truc qui défoncerais tout , c'est un feu d'artifice en 3d ... avec le son en 3d aussi bien sûr (sinon c'est pas marrant )

T'as vu Cari, y'a pas qu'a toi que ca arrive ... c'est bizarre ce phénomène
(mais qui a parlé de fainéantise :) )

Ok pour le fond de veille ... D'ailleurs ca me redonne une idée (j'y pense depuis longtemps mais je n'y arrive pas : Dessiner sur le fond d'écran en tps réel , un post sur le forum en a parlé il y a qq tps mais sans réponse je crois ... si qq1 trouve la réponse, qu'il pense à moi ;) )

NB:
Quand je parle de dessin sur le fond d'écran je pense à VLC avec sa fonction pour faire passer la vidéo sur le WallPaper (donc en dessous des icônes )

Nico

Commentaire de Bacterius le 03/01/2009 11:28:53

Ben, j'ai toujours rêvé de ça ... mais je suppose qu'appeller constamment un SystemParametersInfo(SPI_SETDESKTOPWALLPAPER, @MonFichier, SPIF_SENDCHANGES); ou un truc du genre avec chaque frame c'est pas terrible comme idée lol.

Cordialement, Bacterius !

Commentaire de Nicolas___ le 03/01/2009 12:56:10

C'est sur et certain que ca fonctionne pas comme ca :)

Commentaire de Bacterius le 03/01/2009 14:56:50

C'est sûr ...
Bon j'ai mis l'écran de veille :)
Pour l'image du pont c'est pour bientôt !

Cordialement, Bacterius !

Commentaire de cincap le 04/01/2009 09:57:39

Bonjour à toutes et à tous,

@ Bacterius, super, si je peux me permettre dans le cas de la version ScreenSaver, il faudrait mettre les 2 fichiers WAV dans un fichier Ressource sinon celui qui copiera ce ScreenSaver dans le répertoire Windows sans ces fichiers aura une exception.

Ou permettre dans le module "Paramètres" de les choisir ou de les modifier.

Il ne manque plus que la belle photo de nuit, (Pont ou ville ou Statue de la Liberté) voir GOOGLE onglet "images".

Mes félicitations pour les effets de lancer et explosions, très réaliste.

@+,

Cincap

Commentaire de cincap le 04/01/2009 11:35:04

@ Bacterius,

J'ai ajouté un fichier ressource :

Dans le oncreate :

procedure TMainForm.FormCreate(Sender: TObject);
Var
  I: Integer;
  Res, res2: TResourceStream;
begin
try
    Res := TResourceStream.Create(Hinstance, 'S1', 'WAV');
    Res2 := TResourceStream.Create(Hinstance, 'S2', 'WAV');
// enregistre la ressource dans un fichier
  Res.SavetoFile('boom.wav');
  Res2.SavetoFile('fi.wav');
  finally
    Res.Free;
    Res2.Free;
end;

LoadOptions;
.....
.....
end;

Dans le onclose deletefile..........

Mon fichier RES :

{$R FASons.res}

Contenu du RC :
S1 WAV "BOOM.WAV"
S2 WAV "FI.WAV"

Cela fonctionne dans le dossier mais pas par la boite de dialogue ScreenSaver.

Forcément, l'affichage se fait autrement.

Je teste.

@+,

Cincap

Commentaire de Bacterius le 04/01/2009 12:35:20

Oui en effet il faudrait extraire les sons depuis une ressource puis ensuite les mettre en mémoire, puis supprimer le fichier (tout ça en dossier temporaire bien sûr).

Cordialement, Bacterius !

Commentaire de cincap le 04/01/2009 12:51:54

@ Bacterius, en fait j'ai refait un test et si on l'installe depuis son dossier par le click droit puis "installer", cela fonctionne même dans le preview.

Mon 1er test, j'avais copié le fichier directement dans Windows et click droit puis "tester" cela fonctionnait mais pas dans le preview.

@+,

Cincap

Commentaire de Bacterius le 04/01/2009 13:28:35

En fait il faut gérer le handle du canevas de preview que Windows nous communique en ligne de commande - va voir dans le fichier projet.

Cordialement, Bacterius !

Commentaire de barbichette le 05/01/2009 13:45:17 10/10

Super comme effet... avec le bruit et tout et tout...
Par contre, je me suis emballé... j'ai mis 100 feu d'artifice et ça à planté... Pas assez de mémoire surement, ou trop de thread...
Enfin, c'est super beau...

Pour le dessin sur le bureau, et avoir une bonne fréquence d'image, il faut faire comme les lecteurs vidéo sur desktop (style windvd il me semble). Je ne connais pas le mode exacte mais une piste.
Appliquer une couleur particulière au bureau (fuchsia par exemple) puis on peut dessiner que sur les pixels de cette couleur. Les autres couleurs sont supposées ne pas être le bureau.

Barbichette

Commentaire de Bacterius le 05/01/2009 18:11:00

Merci :)
C'est plus un problème de mémoire que de thread à mon avis, car le thread gère en boucle tous les feux.
Moi ça plante à partir de 50 feux à 70 éclats :'(

Cordialement, Bacterius !

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

faire l'equivalent d'un Mouse_event sous directx [ par gosh ] Voila mon probleme :Je veux envoyer un mouse_event a une autre appli malheuresement en ne passe pas par les message windows WM_xxmais par directx (Dir dessin sur un bitmap [ par jlg75 ] J'ai commencé un petit prog de dessin pour mes débuts en DELPHI.Je dessine sur un bitmap (feuille blanche pour l'instant),chargé dans une TImage. J'ut boucle thread simple exemple ! [ par fabiin ] Salut !Je cherche un exemple simple d'une boucle threadje n'est trouvé aucun tutorial français a ce sujet sur internet Merci par avance@+Fabs Convertir un bitmap en icone [ par sebastienbro ] J'aimerai savoir comment convertir un bitmap, contenu dans une Timage, en icone Problème avec Canvas.draw [ par fabiin ] salut,voici mon prob:j'utilise un threaddans ce thread dans ce thread je dessine sur un TBitmap(jusque la pas de problème)ensuite, je veu afficher mon Convetir une imag en Bitmap [ par sebastienbro ] Je veux convertirune image en ICO, mais il me met une erreur : Image icône incorrectAidez moi !!!!! Arrêt d'un thread [ par commodore ] J'aimerai savoir s'il existe une une variante que ExitThread pour arréter un thread . Car je voudrais arréter un thread d'un a partir d'un BT arrét et Bitmap, tableau de stockage .... [ par dami ] Bonjour a tous. Pour les besoins d'OpenGL, j'ai besoin de transformer mon Jpeg en BMP puis de stocker le BMP sous forme de tableau. J'ai récupéré et a Urgent, cherche aide sur le multi-thread [ par djtexas ] Pour commencer, j'ai programmé un serveur chat sans grande prétention, mais me voila confronté a un problème de stabilité du moteur. J'utilise 2 compo parametrer un thread [ par optarel ] j'aimerais passer un parametre à la fonction thread.execute.or celle-ci n'est jamais appellée explicitement, c'est quand on lance thread.create qu'ell


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales