Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3787 connectés 

 


Dernière réponse
Sujet : [DirectDraw] Flipping surface: Back buffer a un fond bizarre...
antsite Je me suis mis sous tes bons conseils à SDL et :
http://forum.hardware.fr/forum2.ph [...] &owntopic=
mais SDL à l'air pas mal du tout, merci

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
antsite Je me suis mis sous tes bons conseils à SDL et :
http://forum.hardware.fr/forum2.ph [...] &owntopic=
mais SDL à l'air pas mal du tout, merci
Ventilo Moi je te conseil de laisser DirectX et de passer à la SDL!
http://www.libsdl.org
 
C'est open source, c'est plus simple et c'est portable sur tout les OS majeurs, même les MACS!!
 
C'est un ancien programeur directX qui te dit ca!
youdontcare SetBkColor() ne fait qu'updater la variable interne qui stocke la couleur de fond qui sera utilisée pour les prochaines opérations faites avec ton dc : la couleur de fond du texte, d'un polygone, etc. rajoute un DrawRect() si tu veux effacer ta surface. y'a une fonction dx pour aussi. (genre clear() ...)
antsite Excuse moi de te contredire, mais si tu regarde d'un peu plus près le code ci dessus tu verras que si :)
J'ai remarqué que ce fond bizarre est en fait windows en déformé (le fond quand j'ai éxécuté l'appli: l'explorateur si je l'ai fais de l'explorateur,...)
J'ai compilé les exemples de MSDN pour DirectX (ddex1) et il y a le même problème, un fond a moitié transparent du back buffer.
J'ai même essayé SetBkMode en opaque mais ça change rien... :sweat:
LeGreg ben tout simplement parce que tu ne lui as
pas demande de remplir ton backbuffer
avec du noir.
 
A+
LEGREG
antsite Je crée 2 surfaces (une primary et un back). J'affiche la primary, pas de problème.
Quand j'appuie sur une touche je fais :
 
lpDDSPrimary->Flip(NULL,0);
 
pour flipper la front avec la back. Seulement, le flipping se fait bien, mais le fond de la back est bizarre, il est blanc avec des traits. J'avais bien sur fais auparavant :
if(lpDDSBack->GetDC(&hdc) == DD_OK)
{
 SetBkColor(hdc,BLACK);
 SetTextColor(hdc,BLUE);
 TextOut(hdc,300,10,"Back buffer",11);
 
 lpDDSBack->ReleaseDC(hdc);
}
 
et pareil pour la primary surface. Alors pourquoi le fond de la back est pas tout noir ? (Il y a juste le fond du texte de la back qui est noir, pas autour).

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)