www.jammni.de

Logo - Kleiner Drache
Login
Username:

Passwort:

Daten merken
Auto-Login
Registrieren
 
Online
niemand
 
Forumsuche
Suche nach:

Logo - DracheDirectX-Forum

Pria

Gepostet:
07.05.2008 18:55

GDI und DirectX Hybried  
Moin,
wie kann ich trotz DirectX auf dasselbe Fenster zusätzlich mit der GDI zeichnen , ich baue nämlich ein Spiel und das wäre für die Minimap ganz genial , wenn ich diese als Image per DrawImage(...) auf das Device setzen könnte.

Ich Render in der Methode
protected ovveride onPaint(object sender,PaintEventArgs e)
{
Render(); //Render-Methode von DirectX
Draw(e); //Meine Methode für zeichen Operationen
this.Invalidate();
}


Nun ist es aber so , dass ich , wenn ich einfach e.Graphics.DrawImage(Image.FromFile(...),0,0);
aufrufe , das Image auf dem Fenster flackert wie ein Feuer in nem Kamin.
Wie kann ich das ganze Flackerfrei zeichnen?
Zum Seitenanfang    
 
Pria

Gepostet:
09.05.2008 14:53

   
OK , hat sich erledigt.
Ich hab ne andere Lösung gefunden. Ich hab ein neues Form erstellt und als TopMost definiert , dannach habe ich es genau über meiner Rendering-Form angeordnet und als TransparenceKey die Farbe des Hintergrundes dieser Form definiert.Wenn ich nun auf diesem Form zeichne , was Flackerfrei funktioniert , da hier der DoubleBuffer wieder verwendet werden kann , wird das Image auf dem Transparenten Frame dargestellt und unter diesem wird auf meinem DX-Frame gerendert.
Klappt wunderbar und vor allem flüssig.

Ich gebe zu , dass es nicht die beste Lösung ist , aber durchaus eine funktionale.
Trotzdem danke an alle , die hier helfen wollten.
Zum Seitenanfang    
 
Jammni

Gepostet:
09.05.2008 17:22

   
Hihi, finde ich gut, dass du selbst eine Lösung gefunden hast. Ich persönlich hätte aber auch mit DirectX die Minimap gezeichnet - sollte ja normalerweise nix dagegen sprechen.
Zum Seitenanfang Homepage   ICQ