Hallo Leute, ich wollte mich mal bischen mit Spielen beschäftigen. Ist es von Vorteil, hierbei GDI+ in Verbindung mit VB .NET zu verwenden? Es soll kein high-end 3D Spiel werden, sondern z.b. ein einfaches "2D-Spieler-läuft-auf-2D-Kästchen-rum". Da mir DirectX und OpenGL noch ein wenig zu krass ist wollte ich eben mal fragen, ob es mit GDI+ möglich oder gar sinnvoll wäre.
ja mit GDI+ sind einfach klötzchen Spiele bis hin zu etwas komplexeren Kartenspielen und sehr einfachen Shoutern möglich. Als Beispiel möchte ich hier mal Spiele wie Solitär und Minesweeper nenen. Auch Jump'n'Run-Spiele sind möglich.
Im wesentlichen musst du dich nur auf das OnPaint-Event deines Forms oder einen Picturebox registieren und dort dann deine Zeichenlogik implementieren. Dazu brauchst du dann noch das OnKeyDown-Event oder das OnMouseDown-Event um deine Bewerbungs-/Aktionssteuerung zu implementieren.
Wow, vielen dank. Sogar mit Beispielcode. Was noch eine Frage aufwirft, wäre, wie ich Änderungen die ich zeichne auf der form ohne das flackern aktualisieren kann. Hast du da eine Idee? Bzw. Wie ich OnPaint erneut auslösen kann. Danke :)
Du kannst die Control.Invalidate-Methode im Key-Down-Event aufrufen. "Erklärt einen bestimmten Bereich des Steuerelements für ungültig und veranlasst, dass eine Zeichnenmeldung an das Steuerelement gesendet wird." Dh. nach dem aufrufen von Invalidate() wird ein neues Paint-Event ausgelößt. Bei einem Spiel wie Snake musst du Invalidate() in einem Timer alle X millisekunden aufrufen um die automatische Bewerbung der Schlange zu realisieren. Das Flackern bekommst du mit DoubleBuffering weg.
Sehr geil hab schon nach 5 Minuten Erfolg eine Map + Spieler. lustig! Ja, irgendwie ist Codekicker eingeschlafen. Ich dachte ich kanns vergessen das mir iher jemand antwortet aber deine Antwort kam ja in Sekunden ^^