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

02.01.2008, 17:39

Spieleprogrammierung Theorie

Hallo.
Ich habe ja letztens erst angefangen C++ zu lernen, habe diesers Tutorial nun erfolgreich abgeschlossen:

http://www.online-tutorials.net/c-c++-c/c++-tutorial-teil-1/tutorials-t-1-58.html

War für mich eigentlich ziemlich einfach, da ich ja schon PHP programmieren konnte ( auch objektorientiert ). Nur kann ich mit PHP ja bei der Spieleprogrammierung nicht sonderlich viel anfangen.

Jedenfalls beherrsche ich nun denke ich die Basics, aber wie geht es nun weiter? Also wie bekomme ich nun Grafiken in eine Anwendung und kann diese "steuern" und bei Kollision mit einer anderen Grafik entsprechend handeln? Also wie geht es nun weiter, gibt es da gute Bücher? Mein Ziel ist ein einfacher Zelda Klon. Also mein erstes Ziel ist eine Anwendung mit einem Charakter und einem Monster, welches ich schlagen kann und welches folglich stirbt. Was die Grafiken anbetrifft gibt es keine Probleme, ich kann Zeichnen und auch mit Photoshop umgehen und notfalls auch auf vorhandene Grafiken zurückgreifen ( ist ja nur ein Testprojekt erstmal ). Es soll also ein 2d Rollenspiel werden.
Klar soll ich erstmal einfach anfangen, das will ich auch tun, nur habe ich null Ahnung wie es jetzt weitergeht, wo bekomme ich das ganze Wissen über Kollisionsabfragen her etc. und woher weiß ich überhaupt was ich alles brauche, mir fehlt da nicht nur das Wissen, sondern auch die Theorie. Also wie man sowas grundsätzlich überhaupt macht. Also Grafiken bewegen etc., damit meine ich jetzt nicht wie man es mit C++ macht, sondern kurz wie man sowas überhaupt später realisiert. Also sowas wie, dass man bei Kollisionsabfragen irgendwelche Pixel miteinander vergleicht oder so, sowas würde mir schon als antwort für Kollisionabfragen genügen. Brauche halt Theorie, um zu wissen, wie ich überhaupt etwas mache und wie das geht muss ich danach erst wissen. Wie man an ein Spiel rangeht ( Idee und Konzept etc. ) da habe ich mir schon Tutorials durchgelesen, aber zu meinem eigentlich Projekt kommt es ja sowieso erst später. Jetzt will ich erstmal etwas Theorie, wie überhaupt ein solches 2d Rollenspiel funktioniert.

Jan

2

02.01.2008, 18:18

Du: Anfänger
Ziel: 2D
=> Jetzt lerne ich Spieleprogrammierung mit DirectX
http://www.amazon.de/Spieleprogrammierun…g/dp/3827269555

Was besseres, das noch halbwegs aktuell ist für 2D, wirste nicht finden ;)

3

02.01.2008, 18:44

Danke auf jedenfall schonmal.
Kennst du das Buch denn oder kannst du das Buch irgendwie einschätzen, werde ich danach in der Lage sein einen Zelda Klon zu programmieren, also jetzt so, dass ich auf einer Map mit einem Monster bin und es töten kann...?
Ich warte mal noch ein paar andere Meinungen ab, also ich würde es mir schon holen, gibt zwar nur eine Rezension, aber der scheint sehr zufrieden zu sein.

4

02.01.2008, 20:41

Also den Umgang mit Sprites und dynamische Listen sowie pixelgenaue Kollisionen lernste da auf jedenfall. Steuerung und Sound mit der DX8 Technolgie werden dir auch zur Genüge beigebracht (Erwarte jetzt kein 3D Sound ;)). Naja, dass bei einem Rollenspiel eine Karte in viele Felder unterteilt werden soll, kann man sich ja denken ;)
Da musse einfach nur ein 2dimensionales Feld anlegen, dass z.B. ne ID eines Feldtyps speichert, die dann immer auf ein Struct für Feldtypen verweist. Für die Charakteranimationen kann ich nur sagen, dass das Buch dir schon beibringt, wie man 2D-texturen animiert, jedoch nicht, wie man die in nem Malprogramm am besten zeichnet ;)
Da ist am Ende zwar noch ein Einschub für 3D, aber da das Buch für Anfänger ist, darf man nicht erwarten, dass die 3D-Beispiele auf höchstem Niveau optimiert sind ;)
Falls du jetzt doch noch etwas mehr Theorie speziell für Rollenspiele brauchst, kannse ja weiterwarten ;)

5

02.01.2008, 20:54

Das mit dem 2 dimensionalen Feld habe ich mir auch so vergestellt. Nennt sich Tiles oder?
Ich kenne das vom RPG Maker, da konnte man dann die Art von ein so einem Feld einstellen, ob man es begehen kann oder nicht etc...
Nur wie ist das, wenn ein Objekt über mehrere so Feldteilchen hinausgeht aber dann z.B. bei einem Tile nur noch die Hälfte einnimmt, man soll ja alles begehen können, bis auf Wände etc. halt. Bei Tiles hätte man dann auch immer einen Mindestabstand von einem Feld, wenn man Objekte nicht genau nebeneinander machen will oder? Also ich kenne Tiles von Spielen, wie Zelda, aber irgendwie Stelle ich mir das Leveldesign doch etwas komisch vor, man kann ja nicht frei Dinge platzieren, sondern immer in so kleine Quadrate halt...

6

02.01.2008, 21:02

Ich würde dir dafür die SDL empfehlen.
hier findest du einige Tutorials:
http://www.robsite.de/tutorials.php?tut=sdl

ich finde das von Nicolai 'Prefect' Hähnle besonders empfehlenswert.

7

02.01.2008, 23:31

Quellcode

1
Nur wie ist das, wenn ein Objekt über mehrere so Feldteilchen hinausgeht aber dann z.B. bei einem Tile nur noch die Hälfte einnimmt, man soll ja alles begehen können, bis auf Wände etc. halt. 

Wenn du nur zwischen begehbar und nicht begehbar unterscheidest: also hindernis, oder normaler Boden, dann verpasste jedem "Tile" ne Boolesche Variable. und wenn eine Figur von einem Tile zu nem andern läuft, dann würd ich erstmal sagen, dass man beide Tiles als besetzt festlegt, bis die Figur vollständig am ziel angelangt ist (ich denke, so wirds gemacht. hab vorher auch nicht drüber nachgedacht ;)).
Du könnteste natürlich auch die Bodenbeschaffenheit berücksichtigen, also, dass man nicht auf jedem Feld gleich schnell laufen kann, weil da etwa Gras ist, oder ein Steinweg oder vielleicht auch ein Sumpf.
Aber interessant wird das sogenannte Pathfinding (Wie laufe ich schnellsten von A nach B, ohne Hindernisse umzurennen?). Da bin ich auch schon am grübeln, wie man einen effizienten Algorithmus entwerfen kann...

8

03.01.2008, 00:57

Also das Buch werde ich mir morgen wohl kaufen.
Also es gibt schon noch mehrere Sachen als nur "nicht begehbar" oder "begehbar". Manche Sachen soll man ja vielleicht nur von einer Seite aus begehen können oder so.
Das mit den Bodenbeschaffenheiten ist auch richtig. Schwierig wird es bestimmt bei sowas wie Eis. Das man also wenn man anfangen will auf Eis zu laufen erstmal kurz ne Zeit braucht und dann, aber wenn man aufhört zu laufen, noch ein bisschen rutscht.
Aber da mache ich mir jetzt erstmal keine Sorgen, ich lerne erstmal. ;)

9

03.01.2008, 01:18

was soll den nur von einer seite begehbar sein? Wo gibts denn sowas? Gibts Türsteher, die eine Seite blockieren? ;)
Das mit dem Eis hat dann weniger mit der Felddefinition selbst zu tun...das mit dem rutschen musse dem Männchen beibringen ;)
Da hasse z.B. ein Modell, das einen Bremsweg für jeden Bodentyp beschreibt: wenn du also deine vorwärtstaste loslässt, dann soll das männchen schneller oder langsamer (oder auf glatteis fast gar nicht) stoppen können. Na, du machst das schon ;)

10

03.01.2008, 01:23

Weiß ich nicht mehr genau wofür das war, dass man manche Dinge nur von einer Seite begehen kann, das kenne ich nur so vom RPG Maker ^^. Da gab es auch mehrere Ebenenen, da manche Objekte ja über einem sind ( man läuft z.B. unter den Blättern einer Palme oder so ).
Aber der Kalero hat mir hier ja was von SDL gepostet, was ist das denn und was sind da Vor- und Nachteile im Gegensatz zu DirectX bzw. hat es nicht auch was mit DirectX zu tun?

Werbeanzeige