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

  • »CoookeiMonssterr« ist der Autor dieses Themas

Beiträge: 25

Wohnort: Schweiz

Beruf: Informatik-Lehrling

  • Private Nachricht senden

1

24.11.2014, 11:52

Klassen-Konzept eines Spieles

Hallo zusammen

Ich möchte Sie gerne um Ihre Meinung bei meinem Klassen-Konzept für ein Spiel bitten.

Dass das Klassen-Konzept so wie ich es gemacht habe funktioniert weiß ich. Immerhin habe ich damit ja auch schon ein Spiel programmiert.
Jedoch nimmt es mich wunder, was Ihr davon haltet. Macht man das heutzutage so? (Wahrscheinlich eher nicht) Wie macht man es richtig? Wie macht Ihr es?

Ich bedanke mich im Voraus schon einmal für eure Antworten.


MFG

CookeiMonssterr
»CoookeiMonssterr« hat folgende Datei angehängt:
  • Konzept.pdf (91,56 kB - 204 mal heruntergeladen - zuletzt: 14.04.2024, 23:48)

2

24.11.2014, 11:59

Krass ausführlich, muss ich schon sagen. :thumbup:
Statt Diagramme zu zeichnen solltest du vielleicht einfach anfangen... Hat doch schon mal hingehauen.

MfG
Check

  • »CoookeiMonssterr« ist der Autor dieses Themas

Beiträge: 25

Wohnort: Schweiz

Beruf: Informatik-Lehrling

  • Private Nachricht senden

3

24.11.2014, 12:01

Ich wollte ja nur wissen, ob man das so macht. bzw ob Ihr das so macht? Und ob es schlau ist es so zu machen bzw. ob Ihr eine bessere Idee habt.

KeksX

Community-Fossil

Beiträge: 2 107

Beruf: Game Designer

  • Private Nachricht senden

4

24.11.2014, 12:21

Dein Ansatz ist edel und besonders Professoren würden dich dafür lieben, aber in der Praxis hat es sich bewährt, am Anfang erstmal "einfach zu machen" bis man einen Überblick an nötige Anforderungen einer solchen Klasse hat.

Du versuchst hier ja etwas zu modellieren, das du noch gar nicht so richtig kennst.
WIP Website: kevinheese.de

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

5

24.11.2014, 12:40

Ob dein Strukturierung so klappt hängt ja auch am Ende vom Rest deiner Anwendung ab. Das ist ja wirklich sehr sehr grob.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

  • »CoookeiMonssterr« ist der Autor dieses Themas

Beiträge: 25

Wohnort: Schweiz

Beruf: Informatik-Lehrling

  • Private Nachricht senden

6

24.11.2014, 12:45

Das ist was ich immer mache... Ich arbeite meistens drauf los. :)
Das Konzept habe ich ja auch erstelle nachdem ich es ausprobiert bzw. mit einem Beispiel spiel (Snake) erarbeitet habe.

Aber mich interessiert eher wie ihr das macht... Ihr seid ja alle Spielentwickler (Hobby/Profi) ihr kennt es ja.

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

7

24.11.2014, 13:12

Die Frage ist an sich schwer zu beantworten. Jeder hat da irgendwie sein eigenes System und bei dem ein oder anderen unterscheidet sich das von Projekt zu Projekt wieder. Ich denke es ist sinnvoller wenn du spezifischer nach fragst. Hier läuft zur Zeit zum Beispiel ein Thread dazu wie man Inputhandling ins System einbaut. An solchen Konkreteren Punkten kann man besser anpacken. Dein Snake wird ja auch aus mehr bestehen als in der PDF zu sehen ist. Wie die Komponenten untereinander vernetzt sind und miteinander arbeiten ist da ja auch nicht zu sehen. Beschreib doch mal konkret welche Klassen du hast oder noch besser such dir einen Part von deiner Software raus und beschreib wie die aufgebaut ist. Dann kann mir dir besser helfen. Vielleicht hilft dir sonst dieser Link weiter. Der wird hier öfter mal geteilt. Da gehts größtenteils um Design Patterns, am Anfang aber auch um Design allgemein. Vielleicht hilft das ja schon.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

  • »CoookeiMonssterr« ist der Autor dieses Themas

Beiträge: 25

Wohnort: Schweiz

Beruf: Informatik-Lehrling

  • Private Nachricht senden

8

24.11.2014, 13:17

Vielen Dank für den Link. 8o

Vielleicht könntet jemand an einem Beispiel zeigen, wie er es dort gemacht hat...
Welche Klassen er erstellt hat...

Mir geht es darum zu sehen, wie es andere machen. :search:

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

9

24.11.2014, 13:22

Wichtig bei solchen Designs ist zunächst eigentlich erst mal nur, dass es funktioniert - für dich überhaupt. Funktionale Spiele haben wir hier viel zu wenige.

Gedanken darfst Du Dir natürlich trotzdem machen über Dinge wie:
- Sind Komponenten unabhängig? Es sollte niemals zyklische Abhängigkeiten zwischen mehreren Klassen geben, da diese selten sonderlich flexibel für spätere Änderungen sind.
- Gibt es Dinge, die gemeinsam für viele Komponenten gelten? Lassen sich daraus Interfaces ableiten? (zyklisch heißt A verwendet B, B verwendet C und C verwendet A - oder auch kürzer: A kennt B und B kennt A)
- Sind die Komponenten klein genug? Du willst niemals eine eierlegende Wollmilchsau. Eine Klasse, die ein Fenster erstellt, den Game-Loop durchführt und irgendwelche Spiel-Logik verarbeitet wäre ein typisches Negativbeispiel.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

  • »CoookeiMonssterr« ist der Autor dieses Themas

Beiträge: 25

Wohnort: Schweiz

Beruf: Informatik-Lehrling

  • Private Nachricht senden

10

24.11.2014, 13:31

Ok. Also im Grund gibt es kein perfektes Beispiel wie man es machen sollte...

Das Design ist also nur für die Übersicht des Programmierers und für die Flexibilität des Codes gedacht und nur zweitrangig.

Man könnte also genau das gleiche erreichen, wenn man also in die main Funktion schreibt...

Werbeanzeige