JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=1413d84ead95bd1f8b057fdc86098ef6Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Backbuffer - Present funktioniert nicht

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
m_maty
Mini JLI'ler



Anmeldedatum: 12.08.2003
Beiträge: 24
Wohnort: bei Koblenz
Medaillen: Keine

BeitragVerfasst am: 24.02.2005, 23:11    Titel: Backbuffer - Present funktioniert nicht Antworten mit Zitat

hi,

weiss jemand wie ich die korrekte Initialisierung des Backpuffers für den Fenstermodus machen muss.

Hab lange probiert, wenn ich es so mache zeigt er mir nur dann die richtige ausgabe wenn ich nach Present auch noch einen Screenshot mache, kommentiere ich das aus zeigt er nix an (Nur die gewählte BBuffer farbe - seltsam ?

CPP:
   D3DDISPLAYMODE d3ddm;
    m_lpD3D->GetAdapterDisplayMode( D3DADAPTER_DEFAULT, &d3ddm);   
      
   D3DPRESENT_PARAMETERS PParams;
   ZeroMemory(&PParams, sizeof(PParams));

   PParams.Windowed = true;
   PParams.hDeviceWindow = m_hWnd;
   PParams.SwapEffect = D3DSWAPEFFECT_COPY ; //D3DSWAPEFFECT_DISCARD;
   PParams.BackBufferHeight = m_rFensterRect.bottom;
   PParams.BackBufferWidth = m_rFensterRect.right;
   
      PParams.EnableAutoDepthStencil=TRUE;
      PParams.AutoDepthStencilFormat=D3DFMT_D16;
      PParams.BackBufferFormat = d3ddm.Format;
      PParams.MultiSampleType        = D3DMULTISAMPLE_NONE;
      PParams.Flags                  = D3DPRESENTFLAG_LOCKABLE_BACKBUFFER;

   if(FAILED(m_lpD3D->CreateDevice(D3DADAPTER_DEFAULT, //welche Grafikkarte
                           m_devTyp, //Hard oder Softwaremodus 
                           m_hWnd,
                           D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                           &PParams,
                           &m_lpD3DDevice)))
                           {
                           AfxMessageBox("Fehler bei der Directx Initialisierung ");         
                           return;
                           }
                           

    // Zeiger auf dem Hintergrundpuffer holen
    m_lpD3DDevice->GetBackBuffer(0,0,
                                 D3DBACKBUFFER_TYPE_MONO,
                                 &m_lpBackBuffer);

----------------------------------------------------------------


      //Füllfarbe um Backpuffer zu füllen
      this->m_lpD3DDevice->Clear(0,0,D3DCLEAR_TARGET, m_colFarbe,0,0);
      this->m_lpD3DDevice->BeginScene();
      

      this->m_lpD3DDevice->StretchRect(m_surf_Hintergrundsurface,
                              NULL,
                              m_lpBackBuffer,
                              NULL,
                              D3DTEXF_NONE);


   
      
      this->m_lpD3DDevice->EndScene();
   
      //Backpuffer anzeigen
      this->m_lpD3DDevice->Present(0,0,this->m_hWnd,0);
      


      // Oberfläche in Datei speichern (wenn ich das mache zeigt er mir im Direct X Fenster auch den Backpuffer an - dann müsste ich aber jedes mal Screenshots machen um das Prog zum laufen zu bekommen)
    //D3DXSaveSurfaceToFile("c:\\screenshot.bmp",D3DXIFF_BMP, m_lpBackBuffer,0,NULL);


Hoffe, mir kann da jemand helfen Smile

Grüsse, Maty
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Patrick
Dark JLI Master



Anmeldedatum: 25.10.2004
Beiträge: 1895
Wohnort: Düren
Medaillen: Keine

BeitragVerfasst am: 25.02.2005, 12:01    Titel: Antworten mit Zitat

Frag mal den Rückgabewert ab Smile
_________________
'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
m_maty
Mini JLI'ler



Anmeldedatum: 12.08.2003
Beiträge: 24
Wohnort: bei Koblenz
Medaillen: Keine

BeitragVerfasst am: 25.02.2005, 12:42    Titel: Antworten mit Zitat

ist immer: D3D_OK

wenn ich auf softwaremodus umschalte macht er's korrekt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
m_maty
Mini JLI'ler



Anmeldedatum: 12.08.2003
Beiträge: 24
Wohnort: bei Koblenz
Medaillen: Keine

BeitragVerfasst am: 26.02.2005, 16:01    Titel: Antworten mit Zitat

ok, hatt sich erledigt auf meinem andern pc gings - war wohl der treiber Smile
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum