Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Loigie Junior JLI'ler

Anmeldedatum: 29.06.2004 Beiträge: 52 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 17.02.2005, 21:18 Titel: Spiele Aufbau (Struktur) |
|
|
Hallo
Ich wollte mal fragen ob es so etwas wie einen standart Aufbau von Spielen
gibt oder wie ihr eure Spiele strukturiert. Also ich habe jetzt bei meiner Engine eine Audio ,Collisions ,Direct3D ,Gamemanage ,Input ,Physik ,Resourcen ,Skript und Sprite Klasse. Nun frage ich mich z.B. ob ich Funktion PlaySound(...) in der Inputklasse Spriteklasse oder Spieleschleife aufrufen soll?
M.f.G. Loigie |
|
Nach oben |
|
 |
Patrick Dark JLI Master

Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
|
Nach oben |
|
 |
Loigie Junior JLI'ler

Anmeldedatum: 29.06.2004 Beiträge: 52 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 17.02.2005, 21:25 Titel: |
|
|
Zitat: | Gegenfrage: Was hat PlaySound mit Input oder Sprites zu tun? |
Garn nichts aber es wäre sehr einfach da so eine Funktion einzufügen und wenn die Space Taste z.B. gedrückt wir einfach einen Sound für den Sprung noch nebenbei abzuspielen.  |
|
Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 17.02.2005, 21:27 Titel: |
|
|
hm, also ich machs eigenltich imemr so für jeden GameState ersteinmal ne Klasse. Und dann schau ich, welche Objekte auftauchen, also zum Beispiel in "Game" ein Spieler, ein Level, Bonis, Gegner, Schalter usw. Dann für jedes eine Klasse mit jeweils Move und Renderfunktion.
Tjo ansonsten hab ich dann noch ne Input und Auioklasse, über die man einfach Sounds und Musik abspielen kann und schaut, welche Tasten gedrückt werden / gedrück wurden.
Dann noch ne Klasse für DX die das initiaisiert, und dann ncoh etweder ne Spriteklasse oder ne 3D Modellklasse.
Also in die Gamekalsse kommen die ganzen Objektkalssen, die widerum die DXklassen benutzen um zu rendern, sich zu bewegen und Töne machen.
Für zum Beispiel alle Gegener habe ich auch immer noch ne Gegenrmanagerkalsse und für Sprites/TExturen eigneltich auch. Kollison wird in der Spileermove geteste, die das Level fragt, ob an der Position "Platz ist". Also haben die meiten Gameklassen Zeiger auf die andern um von denen Infos zu bekommen. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
 |
Patrick Dark JLI Master

Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 17.02.2005, 21:32 Titel: |
|
|
Loigie hat Folgendes geschrieben: | Garn nichts aber es wäre sehr einfach da so eine Funktion einzufügen und wenn die Space Taste z.B. gedrückt wir einfach einen Sound für den Sprung noch nebenbei abzuspielen.  |
Mit diesem "Argument" kann man sich oft die ganze Strukturierung des Programmes versauen  _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
 |
Loigie Junior JLI'ler

Anmeldedatum: 29.06.2004 Beiträge: 52 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 17.02.2005, 21:45 Titel: |
|
|
Zitat: | Mit diesem "Argument" kann man sich oft die ganze Strukturierung des Programmes versauen |
Ich hoffe es ist noch nicht zu Spät
Also bis jetzt hab ich das so gemacht das ich für jede Bewegung einen Konstanten wert deklariert habe. Der dann von meiner Input Klasse zurückgegeben wird und dann wieder von jeder Klasse (wohl) einzelt in einer switch case Fallunterscheidung behadelt werden muss oder sollte ich das vielleicht in der Gamemanage Klasse alles zusammenlegen? |
|
Nach oben |
|
 |
Patrick Dark JLI Master

Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 17.02.2005, 22:01 Titel: |
|
|
guck mal in mein Tutorial bei dem es bisher sehr viel positiven Feedback gab, darin wird all mögliches behandelt, ResetDevice, Gamemanager uvm.  _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
 |
Loigie Junior JLI'ler

Anmeldedatum: 29.06.2004 Beiträge: 52 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 17.02.2005, 22:19 Titel: |
|
|
In deinen Tutorials ist ein bischen viel C++ für mich, zumindestens für heute Abend
Du musst wissen das "Jetzt lerne ich DX9 und VC++" das einzige "richtige" C++ Buch ist was ich habe. Ja ich weiß da ist noch nachholbedarf. Aber ich muss schon sagen das ich sehr erstaunt bin wieviel C++ in 245 Seiten steckt.
Zuletzt bearbeitet von Loigie am 17.02.2005, 22:22, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
PeaceKiller JLI Master

Alter: 36 Anmeldedatum: 28.11.2002 Beiträge: 970
Medaillen: Keine
|
Verfasst am: 17.02.2005, 22:21 Titel: |
|
|
Loigie hat Folgendes geschrieben: | [...] "Jetzt lerne ich DX9 und VC++" das einzige "richtige" C++ Buch ist [...] |
Das darfst du aber nicht laut vor Patrick sagen  _________________ »If the automobile had followed the same development cycle as the computer, a Rolls-Royce would today cost $100, get a million miles per gallon, and explode once a year, killing everyone inside.«
– Robert X. Cringely, InfoWorld magazine |
|
Nach oben |
|
 |
Patrick Dark JLI Master

Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 17.02.2005, 22:24 Titel: |
|
|
Also ich hab das eigentlich (IMHO) recht logisch aufgebaut. Ich habe für die einzelnen DX-Bereiche jeweils eine Klasse(DX Audio, DInput und im Moment noch DDraw). Dann gibts noch ein paar allgemeine Klassen für Framemanaging, Menüdarstellung, Logfile, Scripts, etc... und eine Klasse für mein komprimierendes Grafikformat.
Was den "nicht-technischen" bzw. designerischen Bereich angeht, gibts eben dann noch zahlreiche Klassen, die mit dem Spiel selbst zu tun haben.
Nichtsdestotrotz hab ich mir schon vorgenommen, das noch mal ein bisschen zu verändern/verbessern. Leider hab ich auch festgestellt, dass ich manchmal Code in Module gepackt habe, die eigentlich in ein anderes oder auch in ein separates Modul sollten  _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Zuletzt bearbeitet von The Lord of Programming am 17.02.2005, 22:37, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Loigie Junior JLI'ler

Anmeldedatum: 29.06.2004 Beiträge: 52 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 17.02.2005, 22:24 Titel: |
|
|
@PeaceKiller
Ich habs ja schon extra in "" geschrieben  |
|
Nach oben |
|
 |
Fallen JLI MVP


Alter: 41 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 17.02.2005, 22:34 Titel: |
|
|
ich hab:
Anwendungspart
Gamepart
Grafikpart
Soundpart
Datenpart
Scriptpart
Steuerungspart
Debugpart _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
 |
|