![]() |
Flappy Firemonkey - Spiele mit Delphi XE5
Guten Abend,
nachdem ich heute auf ![]() Das Spiel hat zwar noch ein paar Verbesserungsmöglichkeiten, aber unterm Strich muss man sagen, dass es wirklich nett aussieht und die Performance auch akzeptabel ist. Jetzt würde mich interessieren, wie man das Ganze in Professionell umsetzt. Ein Timer, der alle 33 ms ein paar Bitmaps rumschiebt, genügt für dieses Spiel vielleicht, ist aber nicht gerade die feine englische Art. Ich hätte spontan an OpenGL gedacht, doch kenne mich mit der Spieleentwicklung noch kein Stück aus, deshalb die Frage an Euch: Wie würde man hier vorgehen? Viele Grüße Croco |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Das hier bezieht sich nicht wirklich direkt an deine Frage aber eher an - warum alle denken, dass Spieleprogrammierung in Delphi nicht geht oder etwas spezielles ist?!
[Edit]Das hier ist nicht nur an dich gerichtet. Ich habe das Gefühl, dass das ein allgemeine Konsens ist![/Edit] Delphi, C++, Java, ... sind "Sprachen".. Eine Sprache ist ein Mittel zum Zweck. Genauso wie ich momentan das Schreiben auf Deutsch ausnutze um dir meine Gedankengänge klarzumachen, benutzt man Programmiersprachen um Spiele (und vieles mehr) darin zu programmieren. Ich könnte genauso gut eine vollständige Erörterung nach Schema machen. Nichts hält mich auf. Der springende Punkt ist, dass das ganze auch auf Englisch, Japanisch, Koreanisch usw. usf. geht! Die Sprache an sich ist nicht der entscheidende Punkt! So, zurück zu deiner ursprünglichen Frage.. Die Mechanik in Flappy Bird/Monkey ist im Grunde ganz einfach: - man hat mehrere Objekte die von rechts nach links wandern - der Protagonist bewegt sich rauf oder runter (wobei runter automatisch geschieht) Technisch ganz billig: - Ein Hintergrund Bitmap für die Szene - Ein Flappy Bird Sprite für den Protagonisten - und jeweils ein Bild für die Hindernisse Hindernisse werden dann einfach zur Laufzeit berechnet (generiert) und zu der Spiellogik passend bewegt! Kollisionsüberprüfung... kannst du hier nach suchen. Sollte auch ganz einfach realisierbar sein! Inputhandling ist auch ganz banal - für jeden Tap auf den Velocity-Vektor einen bestimmten Upvektor drauf addieren! Wenn man dann mal das Grundgerüst fertig hat und es bereits spielbar ist, kann mit dem Aufpolieren begonnen werden.. Hierzu kannste dir ja mal das ![]() [Edit] Zum Timer - in der Praxis macht man das so, dass man so oft es geht die Hauptlogik ausführt (Mainloop) und die visuell-logischen Updates in bestimmten Intervallen machen UND diese delte-Zeit auch mit berücksichtigt! Am einfachsten bemüht man sich um den OnIdle Eventhandler in Application. Dort drinnen führ man allmögliche updates dann aus! Zeitmessung usw. muss auch stattfinden! [/Edit] |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Das Spiel ist ziemlich banal...
Ich hab's vor kurzem auch geproggt (ohne dieses Projekt zu kennen und aufgrund der Idee von ein paar Kumpels, die mir erklärt haben dass das Spiel aus irgendeinem Grund aus den Stores genommen wurden (man merkt: ich besitze kein Smartphones)) Nimm dir ne firemonkey Anwendung und hau einfach ein Image rein. Baust ein paar Klassen zusammen. Und bewegst das Zeug, Lücken per random und gezeichnet wird auf eine bufferbitmap per canvas. Opengl ist nicht zu empfehlen, weil es nicht so einfach konverteirbar ist. Außerdem soll fmx schon eine 3D hardwarebeschleunigung sein :cyclops: Das Spiel hat mich eigentlich nur wegen des highscores und mehrspieler-Modus und den dazugehörigen Servern so viel zeit gekostet (2 Wochen), womit ich 12tage länger gebraucht habe als der progger von Flappy Bird. MfG Puke |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Zitat:
Zitat:
Zitat:
Btw. der Code hat auch sonst gewisse Mängel ( z.B. ständige Abprüfung auf True und False, Verwendung von TImages als Speichermedium für Bildframes, anstatt in Imagelist...) |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Zitat:
|
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Davon abgesehen gibt es jede Menge geniale Minispiele die man auch nach FMX portieren kann. Geht doch mal auf java4k.com und schaut euch die angebotenen Games mal an. Wenn ich etwas kurzweil (im Urlaub, oder weil die bessere Hälfte grade aus dem Haus ist und nix im Fernsehen läuft) brauche, habe ich seit geraumer Zeit diverse Spiele nach Delphi portiert und berücksichtigt man bestimmte Eigenheiten von Delphi bzw. von Java kriegt man die meisten der dort angebotenen Spiele an einem Abend (also pro Spiel) portiert. Ist vielleicht eine Macke von mir, aber ich persönlich finde so etwas äußerst entspannend und wenn das Kompilat dann auf allen Plattformen funktioniert auch sehr befriedigend. Angefangen hab ich damit mit XE2 und irgendwie bin ich von dem Trip nicht mehr losgekommen. Da sind so viele coole Projekte dabei, derzeit finde ich das hier sehr nett:
![]() Natürlich auch das von Gef: ![]() Wobei den Quellcode dann in Delphi umzusetzen wohl mehr als einen Abend braucht. Das Ergebnis ist atemberaubend im Vergleich zum Quellcode, der zwar leserlich, aber dennoch aufwändiger umzusetzen ist. Leider hab ich keinen Urlaub... |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Gibt es deine Umsetzungen irgendwo ? Stores ?
Leider bin ich nicht begabt genug für Spiele.... |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Zitat:
|
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Mir wäre dies bei so einer hohen Einnahme auch relativ egal, aber wenn man sich das Spiel mal genauer ansieht, sieht man dass die Grafiken für den Boden und den Hintergrund von Sonic (glaube ich jedenfalls) und die Röhren von Mario fast 1 zu 1 "nachgemacht" wurden.
Ob das Nintendo und Sega gefallen hat das man mit ihren "Ideen" so viel Geld gemacht hat? Ich glaube der Typ hatte massive Copyright Probleme. |
AW: Flappy Firemonkey - Spiele mit Delphi XE5
Zwei 3D Engines passen imho nicht so gut zusammen?
Außerdem verschnellert fmx angeblich den Zugriff per canvas! Und eine bessere Methode wird es dann wahrscheinlich auch nicht in der Zeit geben! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz