Einzelnen Beitrag anzeigen

Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#4

Re: Text in DirectX Spiel anzeigen

  Alt 28. Feb 2007, 12:53
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
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat