Directx 7 : effets de lignes et de lumière avec directdraw

Soyez le premier à donner votre avis sur cette source.

Vue 4 153 fois - Téléchargée 585 fois

Description

Ceci est un code simple(quand même réservé au personnes qui ont une certaines base en DirectDraw) qui fait des effets de lignes et de lumière avec DirectDraw à l'aide de la fonction Blt. Voilà comment ca fonctionne :
1- On créer une surface(dans ce code, de la grandeur de l'écran)
2- On ajoute les dessins sur cette surface(dans ce code, j'utilise de lignes)
3- On dessine cette surface sur elle-même en y ajoutant des effets(dans ce code, je diminue la grosseur avec blt) et la dessine sur elle-même(dans ce code, à un endroit différent)
4- on retourne à l'étape 2

Ainsi, les effets s'additionnent et donne un beau résultat.

Contrôles :
c - changer les couleurs
l - bloquer les couleurs
e - changer d'effet

Conclusion :


Si vous débutez avec DirectX, allez sur http://www.directx4vb.com/ 'en anglais seulement
C'est sur ce site que j'ai tout appris. J'ai utilisé des parties de leurs codes dans le mien(surtout dans l'initialisation). Vous trouvez donc parfois des commentaires en anglais que je n'ai pas enlevé à certains endroits
      • Dans mon code, le module est une routine de directx que je me suis fait qui me sert à faire du 3D, à utliser DirectDraw et DirectSound. Il a donc des fonctions que je n'utilise pas***


En même temps, si quelqu'un sait comment jouer avec les couleurs d'une surface ou bien sait comment dessiner une surface en angle, dis-le moi!

Je suis ouvert à tous commentaires instructifs

Cara

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
36
Date d'inscription
mercredi 4 octobre 2000
Statut
Membre
Dernière intervention
29 juin 2004

1- Pour l'initialisation de directsound et direct3d, c'est juste à cause que le module est ma routine que j'utilise pour tout faire : 2d, 3d, sons. En fait, on pourrait très bien se passer de l'initialisation du 3d et du son. D'ailleur, dans ma nouvelle version du module(car je crois le module ici est la vieille version), on choisit ce qu'on veux initialiser, genre :

Public Function DXInit(Optional InitDDraw As Boolean True, Optional InitSound As Boolean True, Optional Init3D As Boolean = False)

2 - Pour ce qui est du fait que sur ton ordi ca n'a pas le même effet, je ne sais pas pourquoi. Vu que c'Est directx qui tout le travaille, c'est surement parce qu'il ne "strech" pas les surface de la même façon, mais je ne sais pas pourquoi. Juste le fait de changer 16 bit pour 32 bit ou 8bit change complètement l'effet...

@+
Messages postés
1115
Date d'inscription
jeudi 19 décembre 2002
Statut
Membre
Dernière intervention
6 mai 2007

Je viens peut etre un peu tard, mais bon, vaut mieux tard que jamais ! Je me demande pourquoi tu initialise DirectSound et Direct3D, apparament il n'y en a pas besoin. Pour soutenir FAS, c'esgt vrai que chez moi aussi j'ai pas vraiment le meme rendu, c'est plus lumineux sur ta capture, et l'effet papillon, chez moi sa ressemble plus à un H qu'a une figure courbée comme sur la screen, c'est normal tout ça ?!
Messages postés
41
Date d'inscription
vendredi 6 février 2004
Statut
Membre
Dernière intervention
11 août 2008

C'est très reussi, bravo.
Sous XP, il n'y a pas de problème, ca fonctionne parfaitement pour moi.
Messages postés
88
Date d'inscription
vendredi 26 avril 2002
Statut
Membre
Dernière intervention
24 février 2006

Sur ta capture, c'est magnifique,mais alors chez moi, c'est à vomir :p
Messages postés
921
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
23 septembre 2010

Très joli, en effet !
C'est vrai que au bout d'un moment, les motifs restent "collés" au milieu de l'écran...
Mais sinon, ça marche vraiment bien...
9/10
Saros
Afficher les 7 commentaires

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.