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

06.01.2012, 20:32

Suche: C++ Tutorials für bestimmte 2D Game-Genres

Hallo Leute,
bin neu hier im Board und
habe das Buch "C++ für Spieleprogrammierer" fast durch.
Danach möchte ich gern lernen, wie man ein paar kleine Spielchen in 2D programmiert.

Leider hab ich nur wenig Zeit um selbst auf die Gedanken zu kommen,
wie man bestimmte Spiele-Genre am besten aufbaut.
Deshalb suche ich Tutorials, die mir zeigen,
wie man bestimmte Spiele am besten anfangen sollte zu programmieren.
(Ideal wäre es natürlich, wenn in einem tutorial ein fertiges Spielchen Stück für Stück erklärt werden würde XD)
Vielleicht kennt ja einer von euch ein Paar gute Seiten.
(Ich glaube man z.B ein Jump&run Game ganz anderes angehen als "Asteroids"

Vielen Danke

2

06.01.2012, 22:15

Naja, es gibt ein paar Tutorials, wo man z.B. ein J'N'R programmiert, aber ich habe so etwas nie wirklcih durchgearbeitet. An sich funktionieren viele Spiele sehr ähnlich, es gibt ein paar grundsätzliche Problemstellungen (etwa Kollisionsabfrage) die man immer wieder findet. Der Rest ist meistens nicht wirklich kompliziert, da kommt es dann eher auf das Software Design an, also was man auf welche Klassen verteilt und so weiter. Für kleinere Projekte ist das Design noch nicht so wichtig, und mit der gesammelten Erfahrung weiß man beim nächsten Projekt, was man besser machen kann.

An deiner Stelle würde ich mir einfach irgendein simples 2D Spiel überlegen und überlegen, was für Probleme man für dessen Umsetzung so lösen muss. Die kannst du dann ja hier im Forum diskutieren.

Und wenn du mal etwas halbwegs fertig hast, kannst du es hier vorstellen und beschreiben, wie du es implementiert hast, dann können wir das 'bewerten' und Verbesserungsvorschläge machen. Ich habe festgestellt, dass man sehr viel lernt, wenn man seine Ideen mit anderen diskutiert, auch wenn man sich dabei manchmal dumm vorkommt, weil die anderen so gute Ideen haben.
Lieber dumm fragen, als dumm bleiben!

3

07.01.2012, 17:53

Hallo,
erstmal Danke für deine Antwort und für deinen Tipp.
Leider gehöre ich zu den Menschen, die mit Beispielen besser lernen, als durch selbst rumprobieren...

"An deiner Stelle würde ich mir einfach irgendein simples 2D Spiel überlegen und überlegen, was für Probleme man für dessen Umsetzung so lösen muss. Die kannst du dann ja hier im Forum diskutieren."
Leider bin ich nicht intelligent genug/ oder hab noch zu wenig Erfahrung, als dass ich selbst ein kleines 2D Spiel überlegen könnte...
Vielleicht wenn ich ne Ewigkeit dran sitze, aber leider hab ich nicht so viel Zeit.

vielleicht kann ja einer von der Community mal so ein Tutorial machen :)
würd mich echt freuen, und es würde wahrscheinlich auch viele anderen außer mir helfen ^^

4

07.01.2012, 18:08

Am Ende vom Buch wird doch ein Spiel entwickelt, oder? Eine sehr gute Übung ist es, dieses zu modifizieren, neue Spielelemente einzubauen und so weiter. Dabei merkt man dann sehr schnell, ob man wirklcih alles verstanden hat.

Für den Einstieg wäre dann sowas wie Snake, Pong oder Moorhuhn ganz gut geeignet.
Lieber dumm fragen, als dumm bleiben!

5

07.01.2012, 18:39

Stimmt ja, genau solche Tutorials (Wie das letzte Tutorial von Heiko Kalista) für andere Genres suche ich!
Also wer sowas hat oder kennt, immer her damit :-D

Hoffentlich kann ich aus dem Spiel irgendwie ein Pong umschreiben XD

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »marioschluse« (07.01.2012, 18:56)


6

07.01.2012, 19:52

Mein Kopf tut weh.
Definiere doch bitte für dich mal "Tutorial", damit man weiß, ob du hoffentlich Bücher meinst oder Internet-Tutorials die du a) zu 0,1% finden wirst und b) dich eigentlich wirklich kaum weiterbringen, denn sie sind sehr Copy&Paste-anfällig.

MfG
Check

7

08.01.2012, 09:33

Mein Kopf tut weh.
Definiere doch bitte für dich mal "Tutorial", damit man weiß, ob du hoffentlich Bücher meinst oder Internet-Tutorials die du a) zu 0,1% finden wirst und b) dich eigentlich wirklich kaum weiterbringen, denn sie sind sehr Copy&Paste-anfällig.

MfG
Check

Hallo, sorry wegen der schwammigen Ausdrucksweise.
Mit Tutorial hab ich kein bestimmtes Medium wie "Buch" oder so gemeint, im Prinzip ist mir das Medium egal, von mir aus,
kann es auch ein Youtube-Tutorial sein.
Für mich ist persönlich wichtig, dass man sozusagen mit dem Leser Schritt für Schritt ein kleines Spiel programmiert und
alle zwischenschritte irgendwie erklärt usw.

Trotzdem danke für deine Antwort

8

08.01.2012, 14:20

Das hast du am Ende vom Buch welches Heiko geschrieben hat. ;)
Aber mal als Grundriss:
Mach dir klar welche Dinge du am besten zu erst schreibst. Bei Pong wäre das zum Beispiel der Spieler bzw. (wenn man es dort schon mit Klassen macht) die Schläger-Klasse, die sollte so angepasst sein, dass man eine Instanz für den Spieler, Polymorphie wäre hier auch verwendbar, danach der Gegner. Da muss man sich fragen ob mit KI (=künstliche Intelligenz) oder einen simplen zweiten Spieler, dadurch wäre die Polymorphie logischerweise recht unnötig, falls man denn mit Klassen Pong schreiben möge. Schließlich musst du 'nur noch' den Ball programmieren.
Dann hast du den Grundriss. Natürlich musst du dir auch im klaren sein, was der Ball/Schläger machen soll. Auf jeden Fall sollen die Schläger ihre Grafik zeigen. Der Spieler soll den Schläger mit zwei tasten bewegen können, der Schläger soll nicht den Spielfeldrand verlassen können, evtl. eine kleine Animation anzeigen, das war es eigentlich auch schon für den Schläger des Spielers.
Die meisten Kollisionen laufen über (die Klasse des) den Ball, denn keiner der Schläger kollidieren mit dem anderem.
Strich. Natürlich geht es dabei noch weiter. :P
Das sind so die Gedankengänge, immer überlegen was du wirklich brauchst und was nicht. Naja, C++ für Spieleprogrammierer hat am Ende so etwas. nur mit einer etwas veralteten Engine.
Weitere zu finden, dabei wünsche ich dir viel Glück. Damals habe ich einen viertel Monat dafür verschwendet, in dem ich hätte mehr lernen können, als Tutorials zu suchen und doch keine zu finden. :]

MfG
Check

PS: Der Tat eher weh, weil ich überlegen musste, was ich denn am besten Antworte. Da kann man sehr frech werden. :lol:

9

08.01.2012, 20:43

Danke für die Antwort.
Du hast das ziemlich gut erklärt, vielleicht solltest du auch mal Tutorials schreiben XD

Was meinst du mit veralteter engine?

10

08.01.2012, 22:22

Die SDL (=Simple DirectMedia Layer) ist diese "veraltete Engine".
Im Endeffekt fragst du auch nur, was eine Engine ist, oder?
Das ist eigentlich nichts anderes, als eine, man kann schon sagen, Sammlung von Funktionen, Klassen, evtl. Makros und sicherlich anderen Dingen, welche mir gerade nicht einfallen möchten. :thumbsup:
Die SDL ist C, nicht C++, teilweise auch recht umständlich in der Handhabung und wird von der großen Masse nicht mehr benutzt.
SFML, (=Simple and Fast Multimedia Library) welche eine große Bandbreite an Möglichkeiten hat, ist, wie der Name schon sagt, einfach zu nutzen und eben in C++ und nicht C. Wenn man C++ nutzt, 'möchte' man auch möglichst eine C++ Library benutzen.

MfG
Check

PS: Wenn ich was vergaß, so ergänzt es doch bitte. :]

Werbeanzeige