Problem mit SetRenderState



  • Hallo zusammen
    Ich habe irgendwie ein Problem mit der SetRenderState Methode und zwar funktioniert dies auf meinem Laptop einfach nicht. (Auf meinem Arbeitsgerät funktioniert es hingegen einwandfrei 😞

    pDev->SetRenderTarget(0,this->sfRnt);
    pDev->Clear(0,0x00,D3DCLEAR_TARGET|D3DCLEAR_ZBUFFER,0xff004935,1.0f,0);
    pDev->SetRenderTarget(0,this->sfOri);
    D3DXSaveTextureToFile("test.jpg",D3DXIFF_JPG,this->txRnt,0x00);
    

    Das Rendertarget wird folgendermassen erstellt (Bei der Initialisierung:

    hRst = pDev->CreateTexture(pVm->Width,pVm->Height,1,D3DUSAGE_RENDERTARGET,pVm->Format,D3DPOOL_DEFAULT,&this->txRnt,0x00));
    if(hRst != D3D_OK) throw LowLevelException(FNC,"IDirect3DDevice9::CreateRenderTarget",hRst);
    
     this->txRnt->GetSurfaceLevel(0,&this->sfRnt);
     pDev->GetRenderTarget(0,&this->sfOri);
    

    Das resultierende JPG Bild ist einfach schwarz, sprich, nichtmal das Clear hat funktioniert. Ich verwende Direct3D9 Debug mit höchstem Debug Output Level, Maximum Validation, Break on D3D9 Error usw... Alles bestens, kein Fehler, keine Exception...

    Hat vielleicht jemand eine Idee, was das soll?

    P.S.
    Ist vielleicht nocht wichtig, auf demjenigen Computer, auf dem es funktioniert ist Win7 x86 installiert und auf demjenigen auf dem es nicht funktioniert Win7 x64.

    Gruss Samuel


  • Mod

    hat dein laptop ein intel igp?
    neuste treiber drauf?
    wie schaut es im refras aus?



  • Uiuiui
    Was ist ein Intel IGP? Meinst du den Grafikadapter? Ist eine NVIDIA gForce 130M.
    Neueste Treiber sind drauf
    Was ist ein Refras? Meinst du D3DDEVTYPE_REF? Das habe ich versucht, jedoch stürzt er dann beim Aufruf der Methode IDirect3DDevice9::Present mit einer Speicherschutzverletzung ab. Habe auch SOFTWARE_VERTEXPROCESSING versucht, dann kommt aber ein Laufzeitfehler, dass die CPU die minimalen Voraussetzungen nicht erfüllen würde...



  • Ich habe noch eine Frage, was ist eigentlich der Unterschied zwischen CreateRenderTarget und CreateTexture mit dem D3DUSAGE_RENDERTARGET flag?



  • Das eine macht ne Surface und das andre ne Textur...


Anmelden zum Antworten