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 :

[MFC] multiples devices


Sujet :

DirectX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 26
    Par défaut [MFC] multiples devices
    comment creer plusieurs devices dont l'affichage se ferait dans plusieurs picturebox pour une application MFC ?

    j'ai créé une application DirectX gràce à l'appwizard de visual studio
    j'ai rajouté une picturebox
    et je voudrais creer un autre device et assigner son affichage à cette seconde picturebox
    mais je n'y arrive pas la picturebox reste définitivement grise


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
       // Window
       hRenderWindow = GetDlgItem( IDC_RENDERVIEW2)->GetSafeHwnd();
     
        // Create the device
        hr = m_pD3D->CreateDevice( m_d3dSettings.AdapterOrdinal(), pDeviceInfo->DevType,
                                   hRenderWindow, behaviorFlags, &m_d3dpp,
                                   &g_pd3dDevice_1 );

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 26
    Par défaut
    bon ben j'ai trouvé tout seul =) tsss personne m'a aidé !

    en fait, j'ai trouvé gràce à un example sur codesampler :
    j'utilisais le meme objet direct3D pour creer un 2eme device mais visiblement car marche pas comme ca
    en creant un nouveau objet direct3D pour chaque device là tout de suite ca marche mieux =)
    donc la création donne ca :

    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
    	g_pD3D_1 = Direct3DCreate9( D3D_SDK_VERSION );
     
    	D3DDISPLAYMODE d3ddm;
     
        g_pD3D_1->GetAdapterDisplayMode( D3DADAPTER_DEFAULT, &d3ddm );
     
        D3DPRESENT_PARAMETERS d3dpp;
        ZeroMemory( &d3dpp, sizeof(d3dpp) );
     
        d3dpp.Windowed               = TRUE;
        d3dpp.SwapEffect             = D3DSWAPEFFECT_DISCARD;
        d3dpp.BackBufferFormat       = d3ddm.Format;
        d3dpp.EnableAutoDepthStencil = TRUE;
        d3dpp.AutoDepthStencilFormat = D3DFMT_D16;
        d3dpp.PresentationInterval   = D3DPRESENT_INTERVAL_IMMEDIATE;
     
    	g_hWnd_1 = GetDlgItem(IDC_RENDERVIEW2)->GetSafeHwnd();
     
        g_pD3D_1->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL,
                              g_hWnd_1, D3DCREATE_HARDWARE_VERTEXPROCESSING | D3DCREATE_PUREDEVICE,
                              &d3dpp, &g_pd3dDevice_1 );
    voilà
    par contre si j'ai bien compris, il ne faut surtout pas faire plusieurs devices si on veut partager les memes textures entre plusieurs fenetres

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 07/05/2010, 11h35
  2. MFC multiple
    Par miloux32 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 21/04/2008, 15h15
  3. MFC Multiple problemes
    Par wilfried_42 dans le forum Excel
    Réponses: 1
    Dernier message: 06/06/2007, 20h56
  4. [MFC] multiple constructeur
    Par k_boy dans le forum VC++ .NET
    Réponses: 1
    Dernier message: 11/04/2007, 13h49
  5. Inclure une classe C++ dans un projet MFC smart device
    Par gueulederack dans le forum MFC
    Réponses: 1
    Dernier message: 17/03/2007, 09h10

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