begin process at 2012 02 17 02:13:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > VBNETSCREENSAVER3, SUITE : GESTION OPTIMISÉE DES SPRITES

VBNETSCREENSAVER3, SUITE : GESTION OPTIMISÉE DES SPRITES


 Information sur la source

Note :
Aucune note
Catégorie :Graphique Source .NET ( DotNet ) Niveau :Initié Date de création :08/07/2002 Date de mise à jour :08/07/2002 15:57:28 Vu / téléchargé :10 980 / 510

Auteur : Patrice99

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note


 Description

Comparaison des techniques d'animation graphique en VB.Net par rapport à VB6
(gestion des sprites en transparence sur une image de fond)

Problème posé :
Pour que l'animation soit bien rendue, il faut afficher le fond puis les sprites (petite image en mouvement) à chaque frame (image de l'animation), ce qui provoque un scintillement ("flicker"). Pour éliminer ce scintillement, la façon la plus simple à programmer est de tracer toute l'animation dans un bitmap, puis d'afficher ce bitmap. On peut ensuite accélérer le tracé en déterminant seulement les zones qui doivent être mise à jour à chaque frame, et en invalidant ces zones afin de provoquer un rafraîchissement local : pour que cette optimisation soit complète, on peut ensuite tenir compte de ces zones pour restreindre le tracé effectif à des zones de clipping correspondantes.

- Technologies testées : GDI+, GDI + API Win32 via System.Runtime.InteropServices, DirectX7.
- Astuces employées : Buffering, AutoRedraw, Rectangle de mise à jour (invalidation), Clipping.
- Fonctionnalités : Agrandissement, transparence et rotation de bitmap (trop fort ça !!!).

Résultat : utiliser l'interopérabilité Win32 !?

Si vous connaissez des astuces que je n'ai pas mentionnées, mailez-moi SVP :-)
patrice.dargenton@free.fr
http://patrice.darge nton.free.fr/index.html
Prochaine étape : version VB.Net de Gravity Screen Saver : www.vbfrance.com/article.asp?Val=2162



 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


 Sources du même auteur

Source avec Zip FREEBOOK : MODELE ET MACRO WORD EBOOK POUR LES LISEUSES ELEC...
Source avec Zip Source avec une capture Source .NET (Dotnet) VBFILEFIND : RECHERCHE DE FICHIERS POUR REMPLACER CELLE DE W...
Source avec Zip Source avec une capture Source .NET (Dotnet) VBWINDIFF : INTERFACE D'OPTIONS POUR LE COMPARATEUR WINDIFF
Source avec Zip Source .NET (Dotnet) VBEXCELLIBRARY : LIRE RAPIDEMENT UN CLASSEUR EXCEL SANS EXCE...
Source avec Zip Source .NET (Dotnet) CRÉER UN VRAI OCX EN DOTNET

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) VB10 - CRÉER VOS PROPRES CALQUES SUR UNE IMAGE par Duke49
Source avec Zip Source avec une capture Source .NET (Dotnet) CREER UN GIF ANIMÉ par Le Pivert
Source avec une capture GRAPH PHP COURBE DE CHARGE par s.defaye
Source avec Zip Source avec une capture BOULE DE CRISTAL par BLUEBIBUBBLE
VB6 - DÉPLACEMENT D'UN CONTRÔLE SUR UN SEGMENT DE DROITE DÉL... par ucfoutu

Commentaires et avis

Commentaire de Patrice99 le 12/07/2002 10:46:45

J'ai oublié de citer une des sources en C# dont je me suis bcp inspiré :
http://www.codeguru.com/cs_graphics/flicker_free.html

Commentaire de Patrice99 le 21/07/2002 16:30:38

Nouvelle version :

VBNetScreenSaver4, suite : *.jpeg en fond d'écran et pour n sprites
http://www.vbfrance.com/article.aspx?Val=5202

3 optimisations trouvées :
- Ne pas agrandir l'image du fond pour optimiser la vitesse :
dc.DrawImage(imgFond, 0, 0, imgFond.Width, imgFond.Height)

En fait, GDI+ est indépendant de .Net : il est disponible pour Win32 mais il n'est pas encore totalement wrappé dans .Net : ces 2 optimisations ne sont pas encore disponibles en .Net :
- CachedBitmap : dc.DrawCachedBitmap(cb, x, y)
- dc.SetInterpolationMode(InterpolationModeNearestNeighbor)

Le code de la version 4 est beaucoup plus simple qu'avec la version 3, et finalement les performances sont tout à fait correctes, en tout cas suffisantes pour refaire Gravity Screen Saver :
http://www.vbfrance.com/article.aspx?Val=2162

Commentaire de BadoqueAlex le 25/05/2008 19:34:24

Optimisation .. Laisse moi rire, il me prend 25% de mon processeur sur un QuadXeon ton programme, soit 100% d'un processeur ! C'est ?norme.

Commentaire de Patrice99 le 26/05/2008 08:18:26

Tu as test? la version 3 ou 4 ?

Commentaire de BadoqueAlex le 26/05/2008 12:52:46

les deux lol sont identiques

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 2,964 sec (4)

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