Flackerfrei auf ein Fenster zeichnen

dr_pepper

Mitglied
Hey, ich zeichne wie folgt auf ein Fenster, das funktioniert auch soweit sehr gut. Doch wenn ich nun auf ein Fenster zeichnen möchte, dass die Bilder durchgängig erneuert, flackert das eben ohne ende. Gibt es da irgendein Trick / eine Möglichkeit das zu verhindern?


Code:
rawTxt(LPCSTR text, LPCSTR WindowName)
{

	HWND hWnd = 0;
	HDC hdc;
	RECT rect;
	int ret;


	while (hWnd == 0)
	{
		hWnd = FindWindow(NULL, WindowName);
	}

	hdc = GetDC(hWnd);

	TextOut(hdc, 50, 20, "abc", 3);

	ReleaseDC(hWnd, hdc);

}

Danke!
 
Zuletzt bearbeitet:
Ja den gibt es, nennt sich Blitting. Man zeichnet alles auf ein "unsichtbares" Fenster im Speicher und blendet dann den unsichtbaren Speicher auf den Video-Speicher ein, in dem man eine Block-Copy (Blit) durchführt. Das heißt, das man sich eigentlich zwei Drawable Areas erzeugt.
 
an sowas in der art habe ich gestern auch gedacht...

verstehe ich dich richtig das ich mit CreateDc ein device erstellen soll, und dann auf diesen einfach zeichnen soll (z.b. mit Textout oder DrawText).?

Wenn ja bleibt nurnoch eine frage für mich offen - wie kann ich meine erstellte device verschieben? (also auf mein videospiel setzten?)

dankeschön =)
 
Zurück