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

 


Dernière réponse
Sujet : [D3D8] Je ne comprends pas a quoi sert IDirect3DDevice8::Present
LeGreg Si tu as plusieurs swap chains
les presents devraient etre independant
 
m'enfin j'ai jamais teste donc cf la doc..
 
LEGREG

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
LeGreg Si tu as plusieurs swap chains
les presents devraient etre independant
 
m'enfin j'ai jamais teste donc cf la doc..
 
LEGREG
Ace17 Mais lors du présent, ce qui est dans le back buffer va se retrouver a l'écran, et donc supposons que deux vues se superposent, ca va scintiller! Il faut donc que je trouve une autre solution
LeGreg Je crois que tu peux creer des 'additional swap chains'
associees a une vue et sur lequel tu peux
faire un present separement.
 
Pour faire ton rendu,  
tu recuperes le backbuffer de ta swap chain
et tu rends dessus grace au setrendertarget.
puis tu fais un present sur la swap chain
concerne et tu repetes ceci pour chaque vue.
 
A+
LEGREG
Ace17 Donc, pour faire des vues multiples, j'ai plutot intéret a faire le rendu dans des render-targets a part, les copier ensuite dans le back buffer, et n'invoquer Present qu'une seule fois alors, c'est ca?  :jap:
LeGreg ca cycle dans la file des buffers d'affichage.
 
Exemple: double buffering
le back buffer devient le front buffer
(soit par copie soit par flip)
et le front buffer disparait.
Avant de faire le copy/flip ca attend
que le pipeline d'affichage se vide
-> logique (sauf dans le cas d'un triple buffering)
et eventuellement ca synchronise le copy/flip
avec le balayage de l'ecran pour eviter
le tearing.
 
A+
LEGREG
Ace17 up!  :hello:
Ace17 Cette fonction, d'habitude je l'utilise apres le rendu d'une scene, mais la j'aimerais faire un systeme ou il y aurait plusieurs vues, car plusieurs scenes. J'ai donc commencé a trafiquer avec les CreateRenderTarget et SetRenderTarget, mais j'aimerais comprendre un truc : d'habitude je faisais
lpDevice->Present(NULL, NULL, NULL, NULL)
Mais qu'est-ce qu'il se passe exactement au moment ou j'invoque cette procédure?

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