Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

26.03.2012, 16:48

Optimale Codestruktur für 2D Spiele?

Guten Tag liebe SpieleProgrammierer-Community,
ich plane seit einiger Zeit ein eigenes kleines 2D-Side-Scrolling Game zu programmieren.
Ich hatte hierbei an C++, SFML und Box2D gedacht.
Da ich jedoch nicht sonderlich viel Erfahrung mit Spieleprogrammierung habe, weiß ich nicht genau, wie ich die Struktur OOP mäßig aufbauen sollte.
Habt ihr da irgendwelche Ideen/Vorschläge/Anregungen?

Vielen Dank,

Simon

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

2

26.03.2012, 16:53

Vllt. erstmal weniger vornehmen und ein kleineres Spiel bauen (vor allen vllt. erstmal ohne Physik?)?
Das sollte dir erste Einblicke in vernünftige Code Strukturen geben. Danach könntest du dann eine Nummer größer machen, um dich zu steigern. (Bspw. zuerst ein Pong, dann ein Moorhuhn Klon, danach vllt. ein simples Tower Defense).
Durch entsprechendes Refactoring kannst du bzw. solltest du, nachdem du das zweite Spiel fertig hast, noch einmal einen Blick auf dein erstes legen und sehen, was du daran verbessern könntest und was du dazu gelernt hast.
Erst nachdem du das ein paar mal wiederholt hast würde ich ein etwas umfangreicheres Spiel empfehlen (ich zähle jetzt mal auch einfache Side-Scroller dazu), dann hast du auch in etwa drauf, wie du was OOP mäßig aufziehst.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

3

26.03.2012, 17:38

Wenn ich mich hier mal einklinken darf:
Ist es eigentlich empfehlenswert, einzelne Teile so zu programmieren, dass man sie auch in anderen Projekten verwenden kann oder sollte man alles lieber auf das konkrete Projekt ausrichten? Derzeit probiere ich, alles möglichst allgemein zu schreiben, um es später wiederzuverwenden, doch scheint es mir, dass a) es mehr Zeit beansprucht und b) ich wohl nicht alle Möglichkeiten abdecken werde.

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

4

26.03.2012, 17:45

Allen Anfängern würde ich davon abraten, damit diese nicht überfordert sind.
Später allerdings wäre das zu empfehlen. Einige hier (mich eingeschlossen) haben bestimmt ihre eigenen kleinen Hilfs Bibliotheken die sie so allgemein wie möglich geschrieben haben und des öfteren in Projekten anwenden und dabei auch erweitern/fixen. Ist auch relativ praktisch, wieso Code immer neu schreiben. Ein Beispiel auf die schnelle wäre eine Log Klasse.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

5

26.03.2012, 18:06

Vielen Dank für eure Antworten, ich werde dann mal schauen, wie ich weiter verfahre ;)

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

6

26.03.2012, 19:29

Ist es eigentlich empfehlenswert, einzelne Teile so zu programmieren, dass man sie auch in anderen Projekten verwenden kann oder sollte man alles lieber auf das konkrete Projekt ausrichten? Derzeit probiere ich, alles möglichst allgemein zu schreiben, um es später wiederzuverwenden, doch scheint es mir, dass a) es mehr Zeit beansprucht und b) ich wohl nicht alle Möglichkeiten abdecken werde.

An deiner Stelle würd ich erstmal dein Spiel ganz normal schreiben. Wenn du die richtigen Bücher(Design Patterns, Effective C++ (für C++ Programmierer) usw.) liest und den Willen hast möglichst guten Code zu schreiben wirst du mit der Zeit ganz automatisch Code schreiben, den du ohne viel zu ändern in neuen Projekten verwenden kannst.

Bis jetzt habe ich aber leider nur wenige Hobbyprogrammierer kennen gelernt die es drauf haben wiederverwendbaren Code zu schreiben... ;(
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Werbeanzeige