Spiel-Schleife und GDI über .NET CF
Frage
Hallo ich mag ein Spiel mit einer Hauptspielform und vielen anderen normaler Formen schreiben. Was ist der beste Weg, update-Lack Zyklus in diesem Fall zu verwalten?
Sollte das Spiel Form Farbe Schleife sollte nur außer Kraft gesetzt werden? oder soll ich tun, ein application.do Ereignisse () in der Hauptmethode?
Bitte leitet mich in Bezug auf diese. Ich bin neu in Windows Forms Welt
Lösung
Ihre Logik Faden von der Form getrennt sein sollte, so dass Sie nicht brauchen DoEvents (). Wenn Sie GDI + verwenden, dann sollten Sie ein Update () auf einer Schleife erzwingen. Windows Forms nicht sehr gut die doppelte Pufferung tun, so je nachdem, wie anspruchsvoll Ihre Grafiken werden Sie möglicherweise einige Schwierigkeiten mit Flimmern haben.
Mein Vorschlag ist mit der DirectX verwaltet Bibliothek . Es ist viel zu lernen, aber gibt Ihnen alles, was Sie brauchen.
EDIT: Ich habe vor kurzem über WPF zu lesen, die für einfache bis mäßig komplexe Spiele wie eine viel bessere Plattform scheint, weil es einen viel höheren Level-API als die Managed DirectX-Bibliothek . Es hat wahrscheinlich Leistung und Flexibilität Einschränkungen für komplexere Spiele, aber.
Andere Tipps
Der Körper der Frage Compact Framework nicht erwähnt, WinForms nur. Das ist so ziemlich die akzeptierte Antwort für WinForms von Tom Miller (XNA Game Studio und Managed DirectX Typ von Microsoft):
@Rich B: Das Spiel Schleife ist unabhängig davon, wie der Rendering erfolgt (DirectX, MDX, GDI +)