mikrocontroller.net

Forum: PC-Programmierung c++ spiel programmieren


Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich würde mich gerne in der Programmierung (C++) vertiefen.
Habe bisher immer nur ConsolenAnwendungen gemacht.
Jettz würde ich gerne mit Convays-Game-of-Life oder einem kleinen 
Billiard-Spiel beginnen. Das Problem ist nicht das Programmieren 
(zumindest jetzt noch nicht), sondern eher die Umgebung/Graphik. Ich 
benutze Visual Studio 2015. Aber was benötige ich noch, um die Graphik/ 
ein Spielfenster darstellen lassen zu könnnen? Brauche ich dazu 
überhaupt noch extra sachen? Welche würdet ihr empfehlen?


Gruß

Frank

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vergessen:
Das ganze soll dann hinterher auf meinem Computer (Windows10) laufen.

Frank

Autor: Tasg (Gast)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Ich glaube, du stellst dir das ein bisschen zu einfach vor. Selbst wenn 
du programmieren kannst, solltest du dich erstmal mit den Grundlagen der 
3D/Grafik(programmierung) befassen.

Ansonsten brauchst du halt irgendeine API - wie z.B. OpenGL, Direct3D, 
Vulkan oder ne 3D-Engine (CryEngine und Unreal Engine sind z.B. 
kostenlos).

Autor: Nase (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Tasg schrieb:
> irgendeine API - wie z.B. OpenGL, Direct3D,
> Vulkan oder ne 3D-Engine (CryEngine und Unreal Engine sind z.B.
> kostenlos).

Klar, optimales Werkzeug für:

Frank schrieb:
> Jettz würde ich gerne mit Convays-Game-of-Life oder einem kleinen
> Billiard-Spiel beginnen.



Versuchs mal mit SDL.

Autor: Auge (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
SFML

Autor: db8fs (Gast)
Datum:

Bewertung
4 lesenswert
nicht lesenswert

Autor: Auge (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Kein C++-Thread, in dem nicht Qt empfohlen wird, egal ob sinnvoll oder 
nicht ... Ist das so eine Art ungeschriebene Forenregel? ;)
Ich bleibe dabei: In diesem Fall ganz klar SFML.

Autor: Auge (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
@TO
Schau dir einfach alle genannten Sachen an und spiele damit etwas herum 
(x Leute, x^2 + 1 Meinungen, kennst du ja sicher).

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Auge schrieb:
> In diesem Fall ganz klar SFML.

So klar ist das nicht. Die Simple DirectMedia Layer Library (SDL) wird 
auch in sehr vielen Spielen eingesetzt.

Autor: db8fs (Gast)
Datum:

Bewertung
4 lesenswert
nicht lesenswert
Auge schrieb:
> Kein C++-Thread, in dem nicht Qt empfohlen wird, egal ob sinnvoll
> oder
> nicht ...

Hmm, nun - warum sollte es denn nicht sinnvoll sein? Der OP sprach von 
C++, scheint offensichtlich eher Einsteiger als ein 40h 
Industrieprogrammierer zu sein, und möchte einfach ein Spiel schreiben. 
Qt, inbesondere durch QML macht das verflucht einfach, da kann auch mal 
ein Lehrling im 2. Lehrjahr mal ne GUI zusammenbauen, ohne dass zuviel 
bleibende Schäden entstehen.

Ist das so eine Art ungeschriebene Forenregel? ;)
> Ich bleibe dabei: In diesem Fall ganz klar SFML.

Hmm, wo ist da der Unterschied zur SDL-2.0 bzw. anderen 
Low-Level-Spiele-APIs? Gut, man versteht am Ende des Tutorials, dass man 
halt ne Event-Loop braucht, muss sich aber schon mit technischen Details 
wie Blitten beschäftigen. Ist mit Sicherheit interessant, ist aber nicht 
der beste Rat, den man nem Einsteiger geben kann. Mit QML ist genau das 
gleiche mit weniger Aufwand zu erreichen. Zu werten, auf welche Art 
jemand lernen möchte - ob lieber durch Low-Level-APIs, weil die Technik 
dahinter interessant ist, oder eben durch schnelle Erfolge - die Wertung 
steht mir nicht zu, das muss der OP entscheiden.

Autor: tictactoe (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Da müsste Cinder doch genau passen: https://libcinder.org/

Hier ein Video mit ein paar Beispielen, was man damit machen kann (ab 
Minute 10): 
https://channel9.msdn.com/events/GoingNative/2013/...

In dem Video ist auch noch die Rede von openFrameworks, kann ich aber 
nichts drüber sagen.

Autor: Auge (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
db8fs schrieb:
> ob lieber durch Low-Level-APIs, weil die Technik dahinter interessant ist

Darauf deutet im Beitrag des TO nun wirklich nichts hin - im Gegenteil.
Aber:

> die Wertung steht mir nicht zu, das muss der OP entscheiden.

Weil ich das auch so sehe (und das "ganz klar" natürlich übertrieben 
war), hatte ich den Nachtrag hinzugefügt ...

Autor: db8fs (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auge schrieb:
> db8fs schrieb:
>> ob lieber durch Low-Level-APIs, weil die Technik dahinter interessant ist
>
> Darauf deutet im Beitrag des TO nun wirklich nichts hin - im Gegenteil.

Ach komm, ist doch Haarspalterei, bringt doch nüscht. Ein schönes 
Einsteigerbuch für genau solche Spielereien ist Wolmeringer, 'Coding for 
Fun'. Ist auch der olle Conway dabei, und Apfel-Projektionen auf 
Mandelbrot seine Menge werden auch mal gemacht - allerdings Java. Muss 
ja auch nicht immer gleich C++ sein.

(https://www.google.de/webhp?sourceid=chrome-instan...)

Autor: MaWin (Gast)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Frank schrieb:
> Aber was benötige ich noch, um die Graphik/ ein Spielfenster darstellen
> lassen zu könnnen?

Nichts. Microsoft hat schon jetzt ein Dutzend Wege, um Graphik auf dem 
Bildschirm anzuzeigen. Nimm einen davon. Gerade für Game of Life tut es 
fast jeder, es wird aber unterschiedlich schnell.

Von Controls die 2 Farben anzeigen können angeornet in einem Array mit 
hunderten von Elementen über GDI zum Zeichnen von Quadraten in den 
Client Bereich eines Fensters in 2 Farben über DirectX bis hin zu GDK 
oder ähnlichen Game Development Beispielen.

Die Frage ist eher, welchen Weg davon DU erlernen willst.
Schau halt mal nach "Windows Game of Life" und such dir ein Beispiel 
aus.

Autor: quant (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich kann das Buch empfehlen wenn es DirectX werden soll.
"3D Spieleprogrammierung" von David Scherfgen.
Es ist schon etwas älter (DirectX9), man bekommt einen guten
Einblick in die Spieleprogrammierung.

Autor: Hannes Jaeger (pnuebergang)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank schrieb:
> Das Problem ist nicht das Programmieren
> (zumindest jetzt noch nicht), sondern eher die Umgebung/Graphik. Ich
> benutze Visual Studio 2015. Aber was benötige ich noch, um die Graphik/
> ein Spielfenster darstellen lassen zu könnnen? Brauche ich dazu
> überhaupt noch extra sachen? Welche würdet ihr empfehlen?

Mir ist jetzt nicht ganz klar was du hauptsächlich lernen möchtest. C++ 
oder Spieleprogrammierung?

Wenn C++ sein soll, dann tut es wirklich fast alles, mit dem man in 
Windows etwas auf den Bildschirm zaubern kann. Für Game-of-Life würde es 
sogar die Consolenausgabe mit Buchstaben tun (so hat man das früher 
schon programmiert).

Wenn es dir um Spieleprogrammierung geht, dann benutzen Leute heute 
nicht einfach ein Grafik-Toolkit und eine Programmiersprache, sondern 
komplette Entwicklungsumgebungen für spezielle Spiele-Engines.

Wenn dich interessiert wie so etwas gemacht wird, hier zeigt jemand in 
bisher 73 Videos 
Youtube-Video "Unity Base-Building Game Tutorial - Episode 1!" 
ausführlich wie man ein kleines Spiel mit der bekannten Unity-Engine 
entwickelt. Die Engine und Umgebung gibt es für Privat kostenlos.

Das Game nutzt natürlich bei weitem nicht die Fähigkeiten von Unity aus, 
aber irgendwo muss man ja anfangen. Ein weiteres Problem ist dass er C# 
verwendet, was mehr von Java denn von C++ hat.

Autor: Frank (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Hannes J. schrieb:
> Mir ist jetzt nicht ganz klar was du hauptsächlich lernen möchtest. C++
> oder Spieleprogrammierung?

hauptsächlich möchte ich meine Kenntnisse in C++ verbessern. Aber immer 
nur Ausgaben auf der Konsole wird nach einer weile auch langweilig. 
Daher hatte ich gedacht an ein kleines spiel, wo man wirklich C++ 
anwenden kann und evtl auch ein schönes (schön ist relativ) Ergebnis 
sieht.

Autor: Kaj (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Besorg dir doch erstmal ein Buch, z.B.
- Game Coding Complete, Fourth Edition 
https://www.amazon.de/Game-Coding-Complete-Fourth-...

- C++ für Spieleprogrammierer 
https://www.amazon.de/C-f%C3%BCr-Spieleprogrammier...

Darüber hinaus ist es dir zu empfehlen, dass du dir vielleicht einfach 
mal ein paar Engines anschaust, z.B.
- Unity
https://unity3d.com/

- Leadworks
http://www.leadwerks.com/werkspace/page/home?showbanner=0

Autor: Daniel Abrecht (daniel-a)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Ich empfehle OpenGL, mein erstes Programm war ein 3D Game, damals hatte 
ich das mit Orwell Dev-C++ auf dem 3D Beispiel aufbauend gemacht. Heute 
würde ich vermutlich Vulkan verwenden. Als erstes musst du es schaffen 
ein 3eck anzuzeigen, das ist das Hello World der 3D Entwicklung. Die 
Grundprinzipien sind dann bei OpenGL, DirectX und Vulkan identisch, nur 
die API und die Initialisierung ist anders.

Gute OpenGL Tutorials fand ich damals folgende, sind aber meist noch 
OpenGL 1, aber so für den einstieg vielleicht ganz gut:
 * http://nehe.gamedev.net/
 * https://wiki.delphigl.com/index.php/Tutorial (Ist zwar Delphi und 
nicht C++, hat mich aber noch nie gestört)

Sobald du die Grundlagen beherrscht, würde ich alle glBegins und 
glVector rausschmissen und durch neueres ersetzen.

Für Vulkan gibt es, das ist das beste was es momentan gibt:
  * https://vulkan-tutorial.com/

Auf jeden fall rate ich von DirectX ab, damit hat man einen Vendor 
Lock-in. Lasse dich niemals auf einen Vendor Lock-in ein, das ist 
gefährlich!

: Bearbeitet durch User
Autor: Rolf Magnus (rmagnus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auge schrieb:
> Kein C++-Thread, in dem nicht Qt empfohlen wird, egal ob sinnvoll oder
> nicht ...

Warum sollte Qt da nicht sinnvoll sein?

> Ist das so eine Art ungeschriebene Forenregel? ;)

Die Regel ist: Wenn jemand Qt kennt und weiß, daß es damit gut geht, 
dann nennt er es als Möglichkeit.
Inzwischen hat man eher den Eindruck, es gibt eine "ungeschriebene 
Forenregel", dass, wann immer jemand Qt erwähnt, einer daher kommen 
muss, der sich darüber beschwert - natürlich grundsätzlich, ohne dazu zu 
sagen, warum er Qt für nicht geeignet hält.

db8fs schrieb:
> Ach komm, ist doch Haarspalterei, bringt doch nüscht. Ein schönes
> Einsteigerbuch für genau solche Spielereien ist Wolmeringer, 'Coding for
> Fun'. Ist auch der olle Conway dabei, und Apfel-Projektionen auf
> Mandelbrot seine Menge werden auch mal gemacht - allerdings Java. Muss
> ja auch nicht immer gleich C++ sein.

Du hast aber gelesen, dass er nicht C++ lernt, um ein Spiel zu 
programmieren, sondern genau umgekehrt - ein Spiel programmieren will, 
um damit C++ zu lernen. Was soll er da mit einem Buch über Java?

Daniel A. schrieb:
> Ich empfehle OpenGL, mein erstes Programm war ein 3D Game, damals hatte
> ich das mit Orwell Dev-C++ auf dem 3D Beispiel aufbauend gemacht.

Für ein Game of Life? Da soll er sich erstmal mit 3D-Grafik und 
Dreiecken und Texturen auseinandersetzen und es hiinbekommen, "zu Fuß" 
ein Bild reinzuladen und das als Textur auf ein Rechteck zu legen, um 
das als Basis für ein paar popelige Sprites zu nutzen? Das ist, als ob 
ich auf ein Formel-1-Auto Traktorreifen drauf mache und mir ein eigenes 
Getriebe zum Langsamfahren baue, um dann mit dem ganzen einen Pflug 
durch den Acker zu ziehen.

Autor: nicht"Gast" (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Rolf M. schrieb:
> Warum sollte Qt da nicht sinnvoll sein?

QT ist halt ein riesen Klotz. Da sind so leichgewichtige Sachen wie SDL 
und SFML einfach übersichtlicher.

Mark B. schrieb:
> Auge schrieb:
>> In diesem Fall ganz klar SFML.
>
> So klar ist das nicht. Die Simple DirectMedia Layer Library (SDL) wird
> auch in sehr vielen Spielen eingesetzt.

Doch schon ein wenig Klar SFML ist C++ und genau das will der TE ja 
machen. SDL ist C. Warum das also nehmen.

Autor: Peter Schmitt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gute Tipps wurde hier schon gegeben. Noch eine Ergänzung: wenn du mal 
semiprofessionellen Entwicklern über die Schulter schauen möchtest um 
dir Eindrücke einzuholen, schau mal hier:

https://www.twitch.tv/directory/game/Creative/gamedev

Je nach Tageszeit unterschiedlich stark frequentiert.

Autor: D. I. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Schmitt schrieb:
> Gute Tipps wurde hier schon gegeben. Noch eine Ergänzung: wenn du mal
> semiprofessionellen Entwicklern über die Schulter schauen möchtest um
> dir Eindrücke einzuholen, schau mal hier:
>
> https://www.twitch.tv/directory/game/Creative/gamedev
>
> Je nach Tageszeit unterschiedlich stark frequentiert.

Jo Twitch bietet abseits von Gaming-Streams mittlerweile zu fast jedem 
Spartenthema was an, wird zwar nicht groß auf der Hauptseite beworben, 
aber man kann sich ja mal durch die interessanten Channels klicken. 
Kochen steht auch Hoch im Kurs.

Autor: Dorian H. (dorianh)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert
Wozu willst du (später mal) C++ brauchen? Dein Spiel soll ja auf Win10 
laufen. Für Desktop/Mobile-Anwendungen sind andere Sprachen mittlerweile 
viel interessanter, wichtiger, schneller zu lernen, usw. Oder geht's dir 
um den embedded Bereich?

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Mein Tipp:

Bau zuerst die Spielelogik komplett unabhängig von der Grafikausgabe und 
so, dass du für jeden Schritt eine Member-Funktion GameOfLive::step(); 
callen musst.

Dann strick eine Ausgabe drum herum.
Zuerst für die Konsole - das Kannst du.
Als nächstes suchst du dir irgend ein Gui-Toolkit, erzeugst aus dem 
Spielfeld ein Bitmap und zeigst dieses mit der Gui an. und auf 
Buttonklick/Tastendruck führst du einen step, render, disp aus.
Als nächstes kommt eine Timersteuerung, die genau diese 3 schritte 
aufruft und mittels Gui gestartet und gestoppt werden kann.

für die GUI kann man verschiedenste Sachen nehmen.
Vor allem für GameOfLive ist es fast egal.
Das ginge auch mit plain WinAPI noch relativ gut (falls du damit schon 
mal zu tun hattest).
Wenn man schon mal mit OpenCV garbeitet hat, kann man auch das benutzen 
um einfach ein Bild zu erzeugen und anzuzeigen.
Qt ist natürlich auch super dafür und sollte man als C++ Programmierer 
sich auch schon mal angeschaut haben.

Autor: Daniel Abrecht (daniel-a)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
OK, für 2D Conway wäre OpenGL wohl wirklich overkill. Ich habe sowas mal 
schnell in JavaScript geschrieben, nur so zum Spass.

Autor: Tasg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da hast du wohl ein bisschen zu schnell geschrieben, nur zum Spass, denn 
ich seh da nur ein schwarzes Rechteck.

Autor: Daniel Abrecht (daniel-a)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Tasg schrieb:
> Da hast du wohl ein bisschen zu schnell geschrieben, nur zum Spass, denn
> ich seh da nur ein schwarzes Rechteck.

Bei mir gehts einwandfrei, Ich habe es in Chromium 52 und Firefox 48 
ausprobiert. Safari und IE beachte ich nicht mehr. Eventuell bedienst du 
es auch einfach nicht richtig, du musst zuerst, wenn die Play checkbox 
nicht selektiert ist, einige Zellen setzten, und danach die Play 
checkbox selektieren.

Autor: Heinz L. (ducttape)
Datum:

Bewertung
-2 lesenswert
nicht lesenswert
Man kann's auch sinnlos zerreden. Leute, ich werd Euch NIE im Leben 
einen Toaster designen lassen. Am Ende hab ich irgendein Trumm designed 
das so ziemlich alles kann, vielleicht sogar toasten. Was ich allerdings 
nie bekommen werde ist 'n fertiger Toast, den ich auch über'm 
Bunsenbrenner bekommen hätte.

Er will mit Spieleprogrammierung anfangen, für seine Kiste. Nix mobile, 
nix embedded, und die Wahrscheinlichkeit dass er überhaupt noch mitliest 
würd ich mal als gering einschätzen nach so viel unterschiedlichem "da 
mach dieses und jenes, und GTK und Hastunichtgesehen". Leute, am Arsch, 
ok? Einfach nur am Arsch.

Frank, tut mir ehrlich leid jetzt Deinen Thread hier zu hijacken, und, 
versprochen, am Ende des Postings gibt's dann auch einen Tip (halt noch 
einen, diesmal halt ein meiner Meinung nach vernünftiger), aber das muss 
jetzt mal sein: Ich will nicht mal bezweifeln, dass Ihr Antworter etwas 
von der Materie versteht (ok, stimmt so nicht: bei einigen glaub ich's 
erst wenn ich was dementsprechendes seh, aber das sei mal einfach 
dahingestellt), nur was Ihr hier absondert hilft dem Threadersteller 
keinen Meter weiter. Das ist angewandte Zerebralmasturbation, wo sich 
irgendwelche Leute über esotherische Themen streiten. Das ist wie die 
Frage nach 'ner Linuxdistri vom Einsteiger und die Diskussion zergeht 
innerhalb von 3 Postings in einen Glaubenskrieg um systemd. Davon hat 
der Threadersteller genau GAR NIX. Das hilft ihm genau GAR NICHT weiter. 
Das verwirrt ihn. Ängstigt ihn vielleicht. Weil er nix davon versteht 
und schon gar nicht warum das wichtig für ihn sein sollte.

Kleiner Tip: Ist es nicht. Und zwar so überhaupt gar nicht.

Und sobald er das mitkriegt ist er weg. Und kommt auch nicht mehr 
wieder, weil er hier von Euch genau GAR NIX erhalten hat mit dem er 
irgendwas anfangen kann. Was kommt hier als Antwort? "Nimm das da". 
Begründung? Fehlanzeige. Oft genug hat man das Gefühl, das weiss nicht 
mal der Antworter. Er hat halt seine Antwort hier reingerotzt damit er 
sich wichtig vorkommt, weil er hat was gesagt und ist damit jetzt 
unheimlich erhaben.

Leute, wenn das hier was bringen und nicht nur das eigene Ego massieren 
soll, dann muss für den Threadersteller auch irgendwas dabei rausschauen 
das er sich mitnehmen kann! Mit "Du stellst Dir das zu leicht vor, lass 
es" fängt er nix an, genauso mit "Nimm X, das ist super" ohne 
Begründung. Wer mir sagt ich kann etwas nicht ohne auch nur zu wissen 
WAS ich kann, der wird von mir keine Aufmerksamkeit mehr bekommen. Und 
von jemandem, der seine Empfehlung nicht begründen kann hab ich auch 
wenig, das hätt ich per Google auch bekommen!


So, ausgekotzt hab ich mich, jetzt mal was Substantielles.

Es tut sich grad recht viel im Bereich Spieleprogrammierung, mehrere 
Frameworks und Entwicklungstools konkurrieren gerade darum von 
Einsteigern aufgenommen zu werden weil man erkannt hat, dass der 
Indie-Gamedev Markt recht groß ist und entsprechend wollen mehrere 
Hersteller von Frameworks dadurch, dass sie gratis das Framework 
anbieten den Markt haben.

And Gratis-Umgebungen fallen mir hier zwei ein. Erstens die 
Unreal-Engine (https://www.unrealengine.com) und zweitens Unity 
(https://unity3d.com/). Welche davon jetzt "besser" ist, ist 
hauptsächlich was für'n Glaubenskrieg, meine Empfehlung hier wäre, schau 
Dir mal beide an, probier sie aus (kosten beide nix für'n Heimgebrauch), 
schau Dir Tutorials an (davon gibt's bei Unity mehr). Beide kommen 
komplett mit vollwertigen Physikengines, was für Billiardgames 
grundsätzlich 'n riesen Plus ist (sowas WILLST Du nicht selbst machen!).

Was die Vor- und Nachteile der beiden angeht gibt's auch hinreichend 
Seiten die beide (und noch 'n paar andere) Game-Engines verglichen 
haben. Einfach mal nach "Unity vs. Unreal" googlen. In Kurz: In Unreal 
programmierst Du in C++, Unity in C# (wobei das "programmieren" in 
beiden Fällen sich mehr wie das Ausfüllen von Formularen anfühlt, daran 
würd ich's nicht festmachen). Unreal ist für mehrere Plattformen 
verfügbar, kannst also für Handies so gut wie für PC proggen, Unreal ist 
mehr PC-centric (da gibt's Entwicklung, ist aber aktuell sehr stark so), 
dafür ist Unreal etwas besser optimiert für PC. Gibt noch einige, 
teilweise sehr große, Unterschiede, besonders was die Animation von 
Szenen angeht und die Statemachines, da jetzt ins Detail gehen würde 
wahrscheinlich mehr Verwirrung schaffen als bei der Entscheidung helfen.

Schau Dir einfach mal zu beiden das eine oder andere Tutorial-Video an, 
probier sie aus.

Autor: Matthias S. (Firma: matzetronics) (mschoeldgen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz L. schrieb:
> And Gratis-Umgebungen fallen mir hier zwei ein.

Und natürlich Torque3D:
http://www.garagegames.com

Für Conway sollte allerdings das alte Reversi Beispiel aus dem M$ SDK 
ausreichen.

: Bearbeitet durch User
Autor: Chris F. (chfreund) Benutzerseite
Datum:

Bewertung
-4 lesenswert
nicht lesenswert
Du brauchst auf jeden Fall eine Game-Engine mit einem Leveleditor.

Mit C++ ist Unreal-Engine super und sollte von jemandem der fit ist in 
2-3 Tagen schon zu Ergebnissen und Vorplanungen führen. Die haben auch 
tolle Hilfevideos und eine aktive Community. Da ist für einen Anfänger 
auch das Lizenzmodell sehr bekömmlich.

Autor: MaWin (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Heinz L. schrieb:
> And Gratis-Umgebungen fallen mir hier zwei ein. Erstens die
> Unreal-Engine (https://www.unrealengine.com) und zweitens Unity
> (https://unity3d.com/).

Für Game of Life ? Du bist des Wahnsinns fette Beute.

Heinz L. schrieb:
> Er will mit Spieleprogrammierung anfangen, für seine Kiste. Nix mobile,
> nix embedded,

nix 3d.

Autor: Rolf Magnus (rmagnus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz L. schrieb:
> Er will mit Spieleprogrammierung anfangen, für seine Kiste.

Nein! Er will seine C++-Kenntnisse vertiefen. Das ist das primäre Ziel 
der ganzen Aktion. Das Spiel ist nur Mittel zum Zweck. Und es geht um 
Conway's Game of Life und/oder ein einfaches Billard-Spiel. Kein 
Ego-Shooter mit fotorealistischer Grafik. 3D ist dafür schon mal 
vollkommen unnötig- so wie alles andere, was die von dir vorgeschlagenen 
Engines so können.

Heinz L. schrieb:
> In Kurz: In Unreal programmierst Du in C++, Unity in C# (wobei das
> "programmieren" in beiden Fällen sich mehr wie das Ausfüllen von
> Formularen anfühlt, daran würd ich's nicht festmachen).

Also beides zum Erlernen der C++-Programmierung vollkommen ungeeignet.
Soviel zu deiner schönen Aussage:

Heinz L. schrieb:
> Leute, am Arsch, ok? Einfach nur am Arsch.

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rolf M. schrieb:
> Nein! Er will seine C++-Kenntnisse vertiefen. Das ist das primäre Ziel
> der ganzen Aktion.

würde ich auch so sehen.
In dem Fall würde ich auch die Physikberechnungen selbst machen und 
schauen, wie man das Problem programmtechnisch strukturell am besten 
löst.

Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz L. schrieb:
> und die Wahrscheinlichkeit dass er überhaupt noch mitliest
> würd ich mal als gering einschätzen

doch, ich lese noch mit, aber wie du auch schon gesagt hast, sind einige 
Beiträge ein bisschen am Thema vorbei.

Mir ging es darum, ein Spiel zu machen um meine C++ kenntnisse zu 
vertiefen. Bisher habe ich immer nur Konsolenausgaben gehabt und das 
wird nach na weile langweilig. Könnte auch was anderes machen (also kein 
Spiel), würde aber gerne etwas graphisches sehen.

Werde zunächst das Conway machen und dann wollte ich richtung Billiard 
(oder Flummi, der auf dem Boden fällt).

Autor: Dorian H. (dorianh)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heinz L. schrieb:
> Man kann's auch sinnlos zerreden. Leute, ich werd Euch NIE im Leben
> einen Toaster designen lassen.

Das bin ich jetzt aber erleichtert. Konnte schon die letzten Nächte 
nicht schlafen, weil ich Angst davor hatte, einen Toaster für dich 
designen zu müssen.
Und danke dass du uns aufgeklärt hast. Jetzt wissen wir Bescheid.

Autor: Nils P. (ert)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab mir hier nichts durchgelesen mussst aber bei dem Titel spontan an:
Youtube-Video "05E.1 Raumschiffspiel in C# mit WPF programmieren, Teil 1"
danken. ist zwar kein C++ aber wer weiß

Viel Erfolg
Ert

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
heißer Tipp: das Interview mit John Carmack bzgl. seiner Wahl von C++ 
für die Quake3 Engine und wie schnellen Code in c++ macht.

btw, die Qt als einstieg in die Gui-Welt finde ich nicht so schlecht... 
die GraphicScenes kann man recht einfach auf OpenGL beschleunigt 
schalten... für 2d billiard mit Fokus auf eine Physikengine bzw. dem 
Algorithmendesign garnicht so verkehrt...

Die Qt bringt halt als Klassenbibliothek einfach für fast alle Probleme 
irgendwelche mehr oder minder effiziente Lösungen mit und ist nicht so 
zersplittert wie z.B die GTK...

Im Endeffekt alles Geschmackssache... in dem Interview ind jedenfall 
einige ganz gute allgemeine Hinweise... warum Binärformate für Configs, 
Levels usw gar nicht soo super sind wie gedacht usw...

73

Autor: lalala (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier ein schönes Video zum Thema, Docs und Source sind über die 
Beschreibung erhältlich. Er verwendet SFML. Sieht gut aus, würde ich 
verwenden sobald ich mal ein 2D Spiel programmieren möchte.

Autor: lalala (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.