Salut,
Encore un problème avec le reset device. Tout allait très bien jusqu'à ce que j'utilise une nouvelle méthode de dessin : je créé une texture de rendu sur laquelle je dessine des choses et du texte puis j'utilise un sprite pour recopier un rectangle de cette texture vers le backbuffer.
Lorsque je fais ça la première fois ça marche sans problème. Puis si je fais un reset en nettoyant et en recréant tout comme il faut (je crois), ça marche toujours mais tous les tracés faits avec "DrawPrimitive" sont effectués mais en noir à la place de la couleur que j'ai écrit dans les vertices. Par contre les couleurs du fond et du texte sont bonnes. Ca a l'air d'être lié au principe de recopie de texture car tous mes autres "DrawPrimitive" sont bons.
Voici ce que je fais :
Pour OnLostDevice (appelé avec le reset device)
Un "Release" de la texture et de sa surface
Un "Release" du vertex buffer
un "OnLostDevice" sur la font et le sprite
Pour OnResetDevice (appelé après le reset device)
Un "CreateTexture" de la texture et un "GetSurfaceLevel" pour initialiser la surface
Un "CreateVertexBuffer" pour récréer le vertex buffer puis un "Lock" / "Unlock" pour le remplir correctement (exactement comme la première fois)
un "OnResetDevice" sur la font et le sprite
Un idée pour expliquer ce phénomène bizarre ?
Merci
Partager