IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

Perte du device en plein écran


Sujet :

DirectX

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2003
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 35
    Points : 23
    Points
    23
    Par défaut Perte du device en plein écran
    J'obtiens l'erreur suivante lorsque je tente de rendre le focus à l'application ( après un alt tab réussi ):

    Error in the application.
    -2146232832 (Unknown)
    at Microsoft.DirectX.Direct3D.Device.Reset(PresentParameters presentationParameters)
    at Microsoft.DirectX.Direct3D.Device.OnParentResized(Object sender, EventArgs e)
    at System.Windows.Forms.Control.OnResize(EventArgs e)
    at System.Windows.Forms.Form.OnResize(EventArgs e)
    at System.Windows.Forms.Control.OnSizeChanged(EventArgs e)
    Alors qu'il me semble avoir gérer la perte du device en plein écran :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    	        if (deviceLost)
    	        {
    	            try
    	            {
    	                device.TestCooperativeLevel();
    	            }
    	            catch (DeviceLostException)
    	            {
    	                return;
    	            }
    	            catch (DeviceNotResetException)
    	            {
    	               	device.Reset(device.PresentationParameters);
    	        	}
    	            deviceLost = false;
    	        }
     
                            /* ... */
    	        device.EndScene();
    	        try
    	        {
    	            device.Present();
    	        }
    	        catch(DeviceLostException)
    	        {
    	            deviceLost = true;
    	        }
    Si quelqu'un pouvait m'éclairer ...

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2003
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Par ailleurs même si les exemples du SDK fonctionnent lors d'un alt+tab en plein écran, l'exemple proposé par Laurent-USA "Tétris en C# avec Managed DirectX 9" plante de la même manière en plein écran alors qu'il utilise ces classes du SDK ... ( du moins chez moi ).

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 26
    Points : 17
    Points
    17
    Par défaut
    Moi ce que je vois c'est que lorsque tu as une exception de device lost, ca fait un return. Ca ne doit pas suffire. Il faut que tu le reset si il est perdu.

    Cyrik

Discussions similaires

  1. [GNU Pascal] Lancer une application en plein écran
    Par joleboss dans le forum Autres IDE
    Réponses: 13
    Dernier message: 20/05/2004, 12h57
  2. Perte du device...
    Par Keeman dans le forum DirectX
    Réponses: 1
    Dernier message: 28/01/2004, 18h59
  3. Thread et affichage direct3D plein écran
    Par Harry_polin dans le forum DirectX
    Réponses: 8
    Dernier message: 13/03/2003, 22h22
  4. Réponses: 17
    Dernier message: 17/10/2002, 20h06
  5. plein écran
    Par patapetz dans le forum OpenGL
    Réponses: 9
    Dernier message: 21/08/2002, 14h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo