Programmieren - alles kontrollieren 4.939 Themen, 20.672 Beiträge

DirectX Backbuffer in Surface kopieren

Yves3 / 4 Antworten / Flachansicht Nickles

hallo


ich möchte den backbuffer in ein surface kopieren. funktioniert das so?


m_lpD3DDevice->StretchRect(m_lpBackBuffer,0,m_lpBuffer,0,D3DTEXF_NONE);


fehlermeldungen gibt es keine, es funktioniert aber auch nicht wie erwartet. das leigt veilleich aber auch an etwas anderem.


ich bin noch anfänger und hoffe, dass das mir hier jemand schnell sagen kann.


vielen dank!!

bei Antwort benachrichtigen
PaoloP Yves3 „sorry hab mich nicht ganz deutlich ausgedrückt. mit normalen surfaces...“
Optionen

wie schon gesagt ich kenn's nur von dx7 und der backbuffer ist da im grunde eine surface wie jede andere auch. im fenster-modus sowieso, da ist es eine normale offscreen-surface und wenn du im fullscreen-modus mit flipping arbeitest ändert sich auch nicht viel da dx sich um alles kümmert, das sollte problemlos funktionieren.
das ist jetzt rein intuitiv aber bei einem StretchBlt wie das da einer zu sein scheint musst du die RECT-Angaben schon ordentlich gefüllt mit übergeben, das sieht so aus als du ob du Parameter 2 und 4 weglässt und nur 0 übergibst. ich vermute da gehören ordentlich gesetzte RECT-Angaben hin so das die Funktion weiss wie sie das gestrecht blitten soll, das kannst du nur bei einfachen Blt's getrost auslassen. ich hoffe das war jetzt nicht zu durcheinander ;-)

Jedes mal wenn jemand "Cloud" sagt, verliert ein Engel seine Flügel.
bei Antwort benachrichtigen