AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Shape Wars - Version 2.0.0
Thema durchsuchen
Ansicht
Themen-Optionen

Shape Wars - Version 2.0.0

Ein Thema von Edlmann · begonnen am 23. Mär 2011 · letzter Beitrag vom 17. Apr 2013
Antwort Antwort
Seite 30 von 36   « Erste     20282930 3132     Letzte »    
Edlmann
Registriert seit: 19. Nov 2010
Guten Nachmittag liebe DP,
ich hatte in letzter Zeit das dringende Bedürfnis, endlich einmal mit OpenGL ein fertiges Spiel auf die Beine zu stellen.
Fertig ist es noch nicht, aber Fertig ist ja auch definitionssache Es ist bisher mal Spielbar, auch wenn ich noch
einige Änderungen vorhabe.

Zur Spielidee:
Sinn hat dieses Spiel nicht, wie so viele Minigames. Der Spieler ist eine simple Figur, und muss andere
Formen abschießen. So simpel es sich anhört, ich spiele das Spiel mittlerweile mehr als dass ich es weiterentwickle
Das ganze Spiel ist im Tron-Stil gehalten, und mag dem einem oder anderem bekannt vorkommen, doch selber gemacht macht
ein Spiel imho immer doppelt so viele Laune wie runtergeladen
Die grünen "Dinger", die jeder Gegner fallen lässt, sind Multiplikatoren. Der Multiplikator bestimmt, wie viele Punkte man pro Gegner bekommt
(10 * Multiplikator), womit der Score gegen Ende stark in die Höhe schießt (In unserer Schule liegt der Record für Pacifism bei 50 Millionen)

Steuerung:
Bewegen kann man den Spieler mit den Tasten WASD wahlweise Pfeiltasten (funktionieren beide, aber am besten nicht gleichzeitig benutzen ^^), gezielt wird mit der Maus.
Mit der linken Maustaste kann man schießen.

Einstellungen etc:
F3: Screenshot machen, wird im Unterordner Screenshots erstellt
F5: Partikel an/ausschalten, sollte auf aktuellen Maschinen nicht nötig sein (In der Schule ist dies aber von Vorteil )
F6: Lichteffekte an/aus (sieht mit deutlich besser aus, aber wers lieber schlicht haben möchte...
F7: Equalizer im Hintergrund an/aus
F8: Fenstermodus/Vollbildmodus
F9: Joypad an/aus
Esc: Menü aufrufen (funktioniert nicht bei der Game-Mode-Auswahl)
X: Nächster Song
+ -: Lautstärke der Musik einstellen

Die verschiedenen Spielmodi:
On the Run: Nur relativ langsame Gegner, die dem Spieler folgen. Der einfachste Spielmodus bisher.
Moshpit: Alle Gegnerarten, die ich bisher implementiert habe, erscheinen zufällig. Meiner Meinung nach der schwierigste Modus, da man auf viele verschiedene Dinge achten muss.
Waves: Nur Gegner, die sich gerade über den Bildschirm bewegen, immer über die gesamte Bildschirmbreite. Man muss sich also einen Weg durch die Gegner bahnen, um hier zu überleben.

Download:
http://shapewars.sogru.de/download.php?id=0
Ohne Musik:
http://shapewars.sogru.de/download.php?id=1

Homepage:
http://shapewars.sogru.de

Dank an:
Sascha Willems für den OpenGL-Header der DelphiGL
Der Community der DelphiGL für ihre Tutorials
Jan Horn für seinen Texture-Loader
Den Machern der bass.dll/bass_fx.dll
1024MB (aka Leslie Wai) für einige der Songs
ParagonX9 und Kid2Will für einige der Songs
Culxxaw für das Bereitstellen von Server-Kapazitäten und das schreiben der nötigen .php-Scripte für den Online-Highscore
igel457 für seine Klasse zum Kapseln eines Gamepads (veröffentlicht hier)

Würde mich über Feedback, Verbesserugnsvorschläge etc freuen,
Und es wäre super wenn ihr mir Rückmeldung über die Performance geben könntet, die Partikel-Engine ist schon relativ aufwendig...
Vor allem das testen des Online-Highscores auf Bugsicherheit ist wichtig
Lg, Edlmann

Geändert von Edlmann (21. Sep 2011 um 21:31 Uhr)
 
Edlmann
 
#291
  Alt 4. Jul 2011, 21:23
So, ich bins mal wieder, mit einer neuen Version von Shape-Wars, jetzt bei Versions-Nummer 1.2.2. Für die lange Zeit ist die Liste an Änderungen klein, doch ich hatte
anderes zu tun. Außerdem habe ich mehrere größere Änderungen (Neue Beleuchtungstechnik, GPU-Partikelsystem, und noch einiges anderes an missglückten Versuchen)
wieder verworfen da sie entweder zu viel Leistung benötigten oder ich - wie im Falle des GPU-Partikelsystems - nicht in der Lage war es an das Spiel anzupassen.
  • Punktegewichtung der Gegner überarbeitet: Je stärker der Gegner, desto mehr Punkte gibt er nun (Lila = 10, Orange Pfeile = 20, Blau = 10, Schlangen = 100, Blaue Sprinter = 40, Ausweichgegner = 70)
  • Beim Sterben wird man nun nicht mehr so abrupt in die Mitte gesetzt, das ganze ist nun animiert
  • Cooldown der 1. Waffe runtergesetzt, damit diese schneller schießt und der Abstand zur 2. Waffe nun nicht mehr so groß ist
  • Der Spieler bewegt sich nun diagonal nicht mehr schneller als horizontal, dafür ist er ein wenig schneller
  • Licht-Engine überarbeitet, sollte nun auf älteren Grakas weniger Leistung benötigen
  • Partikel überlagern die Szene jetzt deutlich weniger und die maximale Partikelzahl ist begrenzt (auf das 15-fache dessen, was beim Sterben eines Gegners an
    Partikeln erzeugt wird), dadurch hängt das Spiel nicht mehr so stark, wenn mehr Gegner auf dem Feld sind
  • Option für Vertikale Synchronisation (V-Sync) hinzugefügt, sollte vor allem bei Laptops zum Akku-Sparen dienen
  • But gefixxt bei dem der Menü-Song doppelt lief
  • Der aktuell spielende Track wird nun wieder angezeigt beim Track-Wechsel

Lg, Edlmann
  Mit Zitat antworten Zitat
angos

 
Delphi 11 Alexandria
 
#292
  Alt 5. Jul 2011, 07:53
Schön, werde ich mir im Mittag mal anschauen

Was ich nicht ganz verstehe: Schlangen 100 Punkte? Sprinter und Ausweichgegner sind imho beide gefährlicher. Ansonsten eine schöne Änderung, mit den verschiedenen Punkten!

gruß
Ansgar
  Mit Zitat antworten Zitat
Edlmann
 
#293
  Alt 5. Jul 2011, 11:48
Schön, werde ich mir im Mittag mal anschauen

Was ich nicht ganz verstehe: Schlangen 100 Punkte? Sprinter und Ausweichgegner sind imho beide gefährlicher. Ansonsten eine schöne Änderung, mit den verschiedenen Punkten!

gruß
Aber vor allem im späterem Spielverlauf sind die Schlangen meiner meinung nach deutlich schwieriger zu erlegen und umgehen, da sie ja nicht dem Spieler folgen sondern sich nur zufällig bewegen, und nur am Kopf getötet werden können. Vielleicht balancier ich das ganze nochmal neu aus, aber ich bin mit der aktuellen Verteilung nicht unzufrieden.

Lg
  Mit Zitat antworten Zitat
Benutzerbild von mleyen
mleyen

 
FreePascal / Lazarus
 
#294
  Alt 5. Jul 2011, 18:53
Unspielbar. Das lagt ab und an so derb das man sich durch die Gegend 'teleportiert'.
Aber immer nur wenn ich fliege, halt ich an bewegen sich die Gegner wieder normal.
  Mit Zitat antworten Zitat
Edlmann
 
#295
  Alt 5. Jul 2011, 20:43
Unspielbar. Das lagt ab und an so derb das man sich durch die Gegend 'teleportiert'.
Aber immer nur wenn ich fliege, halt ich an bewegen sich die Gegner wieder normal.
Mmh...Culxxaw meinte vorhin etwas ähnliches, werd ich mir wohl mal anschauen müssen. Könntest du bitte herausfinden ob sich CPU oder GPU überanstrengt? Wäre super.

Lg, Edlmann
  Mit Zitat antworten Zitat
Benutzerbild von mleyen
mleyen

 
FreePascal / Lazarus
 
#296
  Alt 5. Jul 2011, 21:02
Ich tippe auf GPU.
Bei den Lags dümpelten alle Cores rum, bis auf einen der war dann bei ~50% bis max. 90%.
  Mit Zitat antworten Zitat
Edlmann
 
#297
  Alt 5. Jul 2011, 21:15
Dann werd ich mir dir Änderungen, die ich beim Rendering vorgenommen habe nochmal anschauen...Kann sein dass ich irgendwo noch überbleibsel der alten neuen Licht-Engine übergelassen habe oder sonst irgendwo was zerstört habe...Das Problem ist dass ich Performance-Lacks nicht so schnell wahrnehme, da ich eine relativ gute GPU habe...naja, ich schau mal, wird hoffentlich bis morgen gefixxt sein

Und dass nur ein Core ausgelastet ist wundert mich nicht, das ganze ist nach wie vor ein Single-Thread-Spiel aber wenn da bei einem Core der Schnitt bei 50% sind deutet das sehr auf die GPU hin.
  Mit Zitat antworten Zitat
blackfin
 
#298
  Alt 5. Jul 2011, 21:28
Vielleicht ein kleiner Tipp zur Fehlerfindung:
Ich verwende zur Analyse von GPU-Bottlenecks unter OpenGL das geniale Tool GLIntercept.

Einfach die OpenGL32.dll von GLIntercept in das Applikations-Verzeichnis kopieren, durch eine INI-Datei kannst du dann GLIntercept konfigurieren.

Damit kannst du dann z.B. Shader live editieren, nachsehen, welche OpenGL-Calls gerade ausgeführt werden, einen kompletten Frame-Dump zur Analyse erstellen usw.
Du siehst dann alle Displaylisten, Framebuffer, Shader usw. und das Tool spuckt dir auf Wunsch per Hotkey sogar eine XML aus, die du im Browser ansehen kannst, mit dem gesamten Function-Callstack per Frame und noch mehr.

Ich weiss nicht, ob es dir in deinem Fall etwas bringt, aber damit habe ich schon das eine oder andere Flaschenhälschen gefunden

Geändert von blackfin ( 5. Jul 2011 um 21:35 Uhr)
  Mit Zitat antworten Zitat
Edlmann
 
#299
  Alt 5. Jul 2011, 21:31
Vielleicht ein kleiner Tipp zur Fehlerfindung:
Ich verwende zur Analyse von GPU-Bottlenecks unter OpenGL das geniale Tool GLIntercept.

Einfach die OpenGL32.dll von GLIntercept in das Applikations-Verzeichnis kopieren, durch eine INI-Datei kannst du dann GLIntercept konfigurieren.

Damit kannst du dann z.B. Shader live editieren, nachsehen, welche OpenGL-Calls gerade ausgeführt werden, einen kompletten Frame-Dump zur Analyse erstellen usw.
Du siehst dann alle Displaylisten, Framebuffer, Shader usw. und das Tool spuckt dir auf Wunsch per Hotkey sogar eine XML aus, die du im Browser ansehen kannst, mit dem gesamten Function-Callstack per Frame und noch mehr.

Damit findet man oft Flaschenhälse
Danke, werd ich mir mal anschauen, wird mir hier aber nicht mehr nützen als auf den Source zu schauen Habe weder Shader, noch VBO's oder so. Alles ziemlich nativ. Von daher
  Mit Zitat antworten Zitat
Edlmann
 
#300
  Alt 6. Jul 2011, 13:00
@mleyen: Könntest du bitte die Version von hier runterladen:
http://dl.dropbox.com/u/12342503/Sha...%20GFXTest.rar
Und mir Rückmeldung geben ob das dein Problem fixxt? Habe einige Sachen an der Grafik (zurück-)geschraubt, mal schauen ob das das Problem löst.
Danke schonmal,
Edlmann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 30 von 36   « Erste     20282930 3132     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

(?)

LinkBack to this Thread

Erstellt von For Type Datum
C-Sharp-Forum.de - Shape Wars - Version 0.9.9 This thread Refback 11. Apr 2011 15:31
Delphi-Forum.de - Shape Wars - Version 0.9.9 This thread Refback 7. Apr 2011 17:55

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz