Zitat von
StefanG:
ich habe in der PresentCallback funktion einfach das ShowText vor das PresentNext gesetzt
[...]
Doch dort Stürzt das Spiel gleich beim Start mit einer
AV ab.
Das liegt irgendwie am Aufruf von ShowText bzw DrawTextA, denn wenn ich das auskommentiere, läuft das Spiel fehlerfrei.
Hast du einen Tipp was man da machen kann?
Du musst DrawText vor dem Call von EndScene aufrufen, siehe Doku:
Im ersten Tutorial im MSDN steht The IDirect3DDevice9::BeginScene and IDirect3DDevice9::EndScene methods signal to the system when rendering is beginning or is complete. You can call rendering methods only between calls to these methods.
oder meinen vorherigen Beitrag:
Zitat von
JasonDX:
- Render-Befehle muessen zwischen einen BeginScene-EndScene-Block stehen. Also entweder EndScene statt Present hooken oder nen neuen Block aufmachen (IDirect3DDevice9::BeginScene), Text zeichnen, und anschliessend wieder schliessen (EndScene). Bei beidem kanns Probleme geben:
- EndScene Hooken: Es koennen mehrere BeginScene/EndScenes pro Frame aufgerufen werden. Es wird zwar davon abgeraten, aber das ist bei weiten keine Garantie dass dem so ist.
- Present hooken: Wenn verschiedene Backbuffer verwendet werden, wird Present mehrmals pro Frame aufgerufen -> Du zeichnest den Text mehrmals -> doof
greetz
Mike