Online Recoursen fuer C++ Game Development?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Für kleine bis mittelgroße Spiele (z.B. Pac-Man, Jump 'n' Run wie Super Mario, ...) würde ich dir empfehlen, dich mit libxd, openFrameworks, SDL oder SFML auseinanderzusetzen.

Für die Struktur ist es an sich anfangs nur wichtig zu verstehen, dass der Renderingprozess auf einer Game Loop aufbaut. Also im Grunde einer Schleife, die mit jedem Zyklus die Szenerie neu zeichnet.

Bei komplexeren Spielen (z.B. 3D-Shootern, RPG, u.ä.) wird diese Architektur noch um einiges weiter ausgebaut (Stichwort: Entity-Component-System). Ein paar weitere nützliche Patterns werden im OpenBook Game Programming Patterns erläutert.

In dem Zusammenhang würde ich dir zudem empfehlen, dich in Handhabung mit einer Game Engine wie Unreal, die CryEngine oder G3D einzuarbeiten. Tutorials findest du (wie schon bei den oben genannten Bibliotheken) auf den jeweiligen Webseiten der Anbieter, ansonsten wären die Kurse auf Udemy oder Skillshare eine mögliche Anlaufstelle.

Bevor du damit beginnst, ein Spiel umzusetzen, solltest du wie bei jedem Softwareprojekt erst eine Planungsphase einläuten. Diese beiden Artikel können dich darauf einstimmen:

In dem Zuge dürfte auffallen, dass es da viele unterschiedliche Teilbereiche gibt, die für deine jeweils geplanten Spiele einmal relevant werden könnten. Sei es das Sounddesign, das Leveldesign, die Modellierung von 2D/3D-Objekten, usw..

Ich kann ein paar kostenlose Quellen dazu teilen, doch wirst du um eine Eigenrecherche dennoch oft nicht herumkommen.

C++ ist eine der schwersten Sprachen und du möchtest einfach mal so die Basics überspringen? Dann wünsche ich dir viel Spaß am Scheitern, denn das wird passieren!

Wenn du lieber einen guten Rat möchtest:
C# ist eine super Sprache. Sie ist viel leichter als C++ und auch komplex. Lern erstmal die und fang mit den Basics an. Wenn du alles gut kannst, kannst du immer noch auf Spieleentwicklung umsteigen. Für C# kannst du später auf die Unity Engine gehen oder du lernst um. C# ist viel leichter als C++, aber ähnlich, wodurch es dir dann leichter fallen wird, zu wechseln. Wenn du also mit C# beginnst und die Basics lernst (kannst ja später entscheiden, ob du dabei bleibst oder umlernst), dann machst du nichts falsch. Fängst du direkt mit C++ an und das ohne die Basics zu können, dann wirst du scheitern und sehr unzufrieden sein

nadyn0185 
Fragesteller
 30.08.2023, 04:35
C++ ist eine der schwersten Sprachen

Ich weiss.

und du möchtest einfach mal so die Basics überspringen?

Ne, die habe ich ja mit learncpp mittlerweile schon durch.

Wenn du lieber einen guten Rat möchtest:

Lieb gemeint aber jz bin ich schon mit C++ vertraut!

0
FaTech  30.08.2023, 04:38
@nadyn0185

Glaub mir, bist du nicht. C++ ist riesig. Und du musst ja nicht nur C++ wissen, sondern auch alles drum herum. z.B. Wie funktioniert der Arbeitsspeicher usw. In C# wird einem sowas abgenommen, in C++ eher weniger bis gar nicht. Es reicht nicht einmal eine Website bearbeitet zu haben. Lange nicht

1
nadyn0185 
Fragesteller
 30.08.2023, 04:47
@FaTech
Glaub mir, bist du nicht.

Dann scheinst Du learncpp nicht zu kennen, denn diese Website lehrt nicht nur die Basics, sondern auch Intermediate und ein bisschen von Advanced C++.

C++ ist riesig.

Ich weiss.

Und du musst ja nicht nur C++ wissen, sondern auch alles drum herum.

Ich weiss.

z.B. Wie funktioniert der Arbeitsspeicher usw.

Gut zu wissen!

———

Da Du jz also weisst, dass ich die Basics(und mehr) von C++ durch habe, wuerde ich es begruessen, wenn Du mir meine urspruengliche Frage beantworten.

0
FaTech  30.08.2023, 08:24
@nadyn0185

Hast du denn jemals allein ein eigenes Programm entwickelt? Mindestens 1, was komplexer ist und nicht von der Seite stammt, sondern wirklich ein richtiges Projekt.

Du hast dich selbst als Anfänger bezeichnet und das bist du auch. Du redest nur davon,dass du die Website gemacht hast. Das gibt dir noch lange kein C++ basics wissen. Du solltest in der Lage sein, mit Clean Code und ohne Hilfe, ein eigenes Programm zu entwickeln, welches komplex ist und dich an deine Grenzen bringt.

So, wie es klingt, hast du all das noch nie gemacht. Auch wenn es dich trotzdem noch lange nicht zum Experten machst, überschätzt du dich gewaltig.

Du willst die Frage beantwortet? Such nach C++ tutorials für UNREAL Engine. (Gibt's überall wie Sand am Meer) Vielleicht musst du erst hinfallen, damit du es merkst.

0
nadyn0185 
Fragesteller
 30.08.2023, 08:48
@FaTech
Hast du denn jemals allein ein eigenes Programm entwickelt? Mindestens 1, was komplexer ist und nicht von der Seite stammt, sondern wirklich ein richtiges Projekt.

Weisst Du, dafuer ist diese und andere Seiten da, dass man von ihnen lernt und dadurch eigene Programme schreibt.

Du redest nur davon,dass du die Website gemacht hast. Das gibt dir noch lange kein C++ basics wissen.

Ok, Du scheinst die Seite dann wohl offensichtlich nicht zu kennen, denn tatsaechlich wird Dir wie ich bereits erwaehnt habe auch weit aus mehr als nur die Basics beigebracht.

Du solltest in der Lage sein, mit Clean Code und ohne Hilfe, ein eigenes Programm zu entwickeln, welches komplex ist und dich an deine Grenzen bringt.

Nochmal: Diese und andere Seiten sind dafuer da, dass man von ihnen lernt und das gelernte umsetzt sprich ganz eigene Programme schreibt.

So, wie es klingt, hast du all das noch nie gemacht.

Oh sorry, dass ich meine zick selbst geschriebenen Programme nicht in meiner Frage gelistet habe, um zu jemanden wie Dir zu beweisen, dass ich wirklich programmieren kann, nur nichts mit Game Development am Hut habe.

Du willst die Frage beantwortet? Such nach C++ tutorials für UNREAL Engine.

Eigentlich hatte ich meine Frage genau aus diesem Grund gestellt aber Du musstest gleich erstmal meine bisherige Programmier Erfahrung infrage stellen und mich obendrauf sogar noch davon abbringen, weiter mit C++ zu programmieren, nur weil Du erfahrener mit C# bist.

———

Dein gesamter Umgangston gegenueber mir ist absolut unfreundlich und respektlos!

Zudem ist Deine Antwort als auch Deine gesamten Kommentare unter meiner Frage bereits meldefaehig, weil eingehen auf die Frage tust Du genau Null damit!

Auf Google hinzuweisen als Antwortgeber aka Community-Experte fuer programmieren beantwortet naemlich nicht die Frage!

0
FaTech  30.08.2023, 09:12
@nadyn0185
Dein gesamter Umgangston gegenueber mir ist absolut unfreundlich und respektlos!

Mein Umgangston ist nicht respektlos, sondern ich ziehe logische Schlüsse aus deiner Frage und Kommentare und entwickel dazu eine passende Antwort. Ist das Ergebnis, dass ich dich lieber warnen sollte, weil das der bessere Weg ist, dann gehört das nun mal dazu.

Zudem ist Deine Antwort als auch Deine gesamten Kommentare unter meiner Frage bereits meldefaehig, weil eingehen auf die Frage tust Du genau Null damit!

Nein, das stimmt nicht. Ich gehe auf die Frage ein und erkenne anhand deiner Frage, dass du totaler Anfänger bist. Demnach ist es wichtig, dass man dich erst mal normal weiter bringt. Das beantwortet also sehr wohl die Frage. Nur weil du es nicht akzeptierst, heißt es nicht, dass es nicht stimmt, was ich sage.

Auf Google hinzuweisen als Antwortgeber aka Community-Experte fuer programmieren beantwortet naemlich nicht die Frage!

Meine Aufgabe ist nicht das Recherchieren von Websites oder Videos für dich. Du nennst dich in der Frage Anfänger, aber in den Kommentaren einen Profi. Demnach solltest du als Profi in der Lage sein, selbst Recherchen anzustellen. Hierzu habe ich dir eine Suchvorlage gegeben, wonach du suchen musst. Ist dir das nicht genug, kann ich nichts dazu.

Hiermit ist dann auch die Kommentarsektion am Ende. Ich werde nicht weiter auf deine Antworten eingehen. Aus einer gut gemeinten Antwort, welche ich aufgrund von Erfahrung und logischen Schlüssen gebildet habe, wurde ein Hass gegen mich, weil du es nicht akzeptierst. Ich denke mir keine zufälligen Antworten aus und selbst nach mehrfachen lesen, komme ich zum Entschluss, dass die Antwort richtig ist. Sie passt zu deiner Frage. Nächstes Mal am besten die Frage umformulieren. So als Tipp nebenbei. Ich will mich mit dir nicht streiten. Das hat keinen Mehrwert. Deshalb werde ich nicht weiter auf dich eingehen.

0
nadyn0185 
Fragesteller
 30.08.2023, 19:07
@FaTech
Mein Umgangston ist nicht respektlos

Weil Du offensichtlich in Deinem Verhalten ja auch nichts unfreundliches und respektloses siehst, soll ich Dir etwa mal aufzeigen, was von Dir unfreundlich und respeklos ist?

sondern ich ziehe logische Schlüsse aus deiner Frage und Kommentare und entwickel dazu eine passende Antwort.

Und dabei nicht konkret auf die eigentliche Frage eingehen und stattdessen erstmal mich nicht nur von C++ abbringen wollen, sondern weiter mit C# zu lernen und dann auch noch aus voellig unerklaerlichen Gruenden auch noch meine bisherige Programmier Erfahrung mit learncpp.com ebenfalls nicht nur infrage stellen, sondern auch gleich komplett als gar keine Erfahrung abstempeln, was schon mal beweist, dass Du die Seite nicht kennst!

Ist das Ergebnis, dass ich dich lieber warnen sollte

Warnen? Vor was denn?

Nein, das stimmt nicht. Ich gehe auf die Frage ein

Nein.. gehst Du eben nicht, weil im Gegensatz zu regex9 hast Du mir nicht nur ansatzweise irgendwas bezueglich C++ Game Development in Deiner Antwort als auch Kommentaren gesagt, sondern stattdessen nur rum gepoeppelt und auf voellig grundlos auf meiner bisherigen Programmier Erfahrung rum gehackt, was so ueberhaupt nichts mit meiner Frage zu tun hat!

und erkenne anhand deiner Frage, dass du totaler Anfänger bist.

Was so leider nicht stimmt, denn ich habe weit mehr als nur die Basics Erfahrung von C++ aber vorurteilen scheint wohl Deine besondere Staerke zu sein!

Meine Aufgabe ist nicht das Recherchieren von Websites oder Videos für dich.

Das hat auch niemand verlangt aber dann frage ich mich, warum regex9 meine Frage verstanden hat und mir Informationen gesagt hat mit denen ich jz was anfangen kann?

Du nennst dich in der Frage Anfänger

Wo habe ich mich in meiner Frage als Anfaenger bezeichnet?

Ich sagte, dass ich im Bereich Game Development keine Erfahrung habe aber nicht, dass ich gar keine Programmier Erfahrung habe.

aber in den Kommentaren einen Profi.

Auch das stimmt nicht, ich habe nie irgendwas in diese Richtung gesagt!

Bitte unterlasse diese falschen Unterstellungen!

Aus einer gut gemeinten Antwort

Aus einer gut gemeinten Antwort mich vom programmieren mit C++ abzubringen und weiter mit C# zu machen, weil Du persoenlich damit bessere Erfahrung gemacht hast - meinst Du diese Antwort, denn das ist sie!

Ich denke mir keine zufälligen Antworten aus und selbst nach mehrfachen lesen, komme ich zum Entschluss, dass die Antwort richtig ist.

Wie ganz am Anfang von diesem Kommentar, ist es natuerlich voellig einleuchtend, dass Du selbst Deine Antwort als richtig einstufst, obwohl sie das nicht ist, weil Du nach wie vor exakt Null auf meine Frage bisher eingegangen bist, sondern weiterhin nur unnoetig rum poeppelst und mir falsche Dinge unterstellst.

Sie passt zu deiner Frage.

Nein, passt sie nicht, sie geht ja nicht mal auf meine Frage ein also kann sie ja gar nicht zu meiner Frage passen.

Nächstes Mal am besten die Frage umformulieren. So als Tipp nebenbei.

Oder Du lernst mal zu lesen und das gelesene richtig zu verstehen, denn anhand Deiner falschen Unterstellungen gegenueber mir, hast Du sie ja ganz offensichtlich nicht verstanden.

0