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 :

Détecter le support hardware [DirectX 10]


Sujet :

DirectX

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mars 2006
    Messages : 143
    Points : 112
    Points
    112
    Par défaut Détecter le support hardware
    Bonjour,

    Comment détecter si une carte vidéo supporte un HAL device avec DX10 ?

    J'utilise DXUTCreateDevice(..) pour initialiser un device DX10
    puis je teste dans OnD3D10CreateDevice(..)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    hr = pAdapter->CheckInterfaceSupport( __uuidof(ID3D10Device), NULL );
    mais la fonction renvoie toujours OK, même si le hardware ne supporte pas DX10

    et je me retrouve avec une émulation en REF device lors de l'éxecution

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 382
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 382
    Points : 4 937
    Points
    4 937
    Par défaut
    si tu utilises DXUT, il suffit de mettre une callback pour DXUTSetCallbackDeviceChanging, esnuite dans le code de la callback il faut regarder si le champ DriverType de DXUTDeviceSettings est à D3D_DRIVER_TYPE_HARDWARE.

    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
    // déclaration de la callback
    bool CALLBACK ModifyDeviceSettings( DXUTDeviceSettings* pDeviceSettings, void* pUserContext );
     
    // dans le main
    DXUTSetCallbackDeviceChanging( ModifyDeviceSettings );
     
    // la définition de la callback
    bool CALLBACK ModifyDeviceSettings( DXUTDeviceSettings* pDeviceSettings, void* pUserContext )
    {
        // attention le code est simplifié au maximum
        // il faut d'abord tester si on a un device dx10
        if( pDeviceSettings->d3d10.DriverType == D3D10_DRIVER_TYPE_REFERENCE )
            // device de type référence
            ;
     
        return true;
    }

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Mars 2006
    Messages : 143
    Points : 112
    Points
    112
    Par défaut
    effectivement, j'aurais du y penser

    ça marche

    merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Support Hardware pour dev Java ? Quel serveur - service ?
    Par spirit.daemon dans le forum Développement Web en Java
    Réponses: 2
    Dernier message: 11/03/2011, 13h06
  2. Réponses: 1
    Dernier message: 07/07/2009, 10h30
  3. Détecter un support carte SD.
    Par Nixeus dans le forum C++
    Réponses: 2
    Dernier message: 26/06/2009, 13h59
  4. détecter si le navigateur supporte VML ou SVG
    Par Z3c33 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 17/03/2008, 11h21

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