[C/C++] Echtzeit-Strategiespiel 2D Programmieren C++

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Annonymous01503, 2. Mai 2008 .

Schlagworte:
  1. 2. Mai 2008
    Echtzeit-Strategiespiel 2D Programmieren C++

    Hi,

    Ich habe vor ein Echtzeit-Strategiespiel in 2D zu Programmieren.

    Ich kenne mich zwar bischen in Java aus aber habe leider keine C++ Kenntnisse.

    Ich hatte schonmal ein Thema wegen "Java Buch gesucht" eröfnet aber da ich brauch ja C++.

    Mein Ziel ist es sich vollständig auf C++ konzentrieren zu können.

    Brauche am besten auch ein Buch wo die Objektorientierung auch gut erklärt wird.


    1.) Was meint ihr welches Buch sollte ich nehmen?

    Spieleprogrammierung mit DirectX und C++. 2D-, 3D- und Netzwerkspiele, viele Spezialeffekte - Das Buch von Galileo Computing

    Spieleprogrammierung in C++. Eine projektorientierte Einführung in die Programmierung von 2D-, 3D- und Netzwerkspielen mit DirectX - Das Buch von Galileo Computing

    Jetzt lerne ich Spieleprogrammierung mit DirectX - Auf CD: DirectX 9 SDK, Visual C++ 2003-Toolkit, Code::Blocks, alle Quellcodes und Testversionen der ... einfache Einstieg in die C++-Programmierung: Amazon.de: Christian Rousselle: Bücher

    C++ für Spieleprogrammierer: Amazon.de: Heiko Kalista: Bücher

    3D-Spieleprogrammierung. Modernes Game Design mit DirectX 9 und C++, mit CD-ROM: Amazon.de: David Scherfgen: Bücher

    2.) was brauch ich den alles dazu?


    Wäre für Antworten äuserst Dankbar.


    Gruß Annonymous01503
     
  2. 2. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    ich würd - wenn du schonm anfängst eine programmiersprache neu zu lernen- C Sharp lernen (C#). die ist moderner und meines erachtens auch einfacher. hab selber c++ gelernt. bin dann aber auf c# umgestiegen und fands einfacher.

    Hier ein paar Tutorials:
    Code:
    http://www.mycsharp.de/wbb2/thread.php?threadid=19670 <--- Client-/Server
    http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0503-01.mspx <--- Directx 3D Webcasts
    http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0501-01.mspx <--- GDI+ Webcasts
    http://www.galileocomputing.de/openbook/csharp/ <--- Open Book
    www.galileocomputing.de/openbook/visual_csharp/
    http://www.guidetocsharp.de/home/index.html
    http://www.uni-trier.de/urt/user/baltes/docs/csharp/csharp.htm
    http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0604-01.mspx <--- Webcasts für Einsteiger
    Eine kleine Tutorials-Reihe:
    http://www.heise.de/ix/artikel/2001/12/122/#ixtract
    http://www.heise.de/ix/artikel/2001/12/122/01.shtml
    http://www.heise.de/ix/artikel/2001/12/122/02.shtml
    http://www.heise.de/ix/artikel/2001/12/122/03.shtml
    http://www.heise.de/ix/artikel/2001/12/122/05.shtml
    http://www.heise.de/ix/artikel/2001/12/122/06.shtml
    http://www.heise.de/ix/artikel/2002/01/130/
    http://www.heise.de/ix/artikel/2002/02/136/ 
    des weiteren brauchst du eine entwicklungsumgebung.
    Ich benutze Microsoft Visual Studio. da kannste mit jeder programmiersprache arbeiten ( kostet einmalig).
    ne Version die es umsonst gibt wäre Microsoft Visual C# 2005 Express (auf der Microsoft Hompage
    - kostenlos anmelden und laden-)
    oder guck mal im UG evtl. findest du da was. hab noch nicht nachgeschaut

    Zu deinen Büchern: zu den ersten beiden kann ich nichts sagen, kenne sie und ihren inhalt nicht.
    Das dritte Buch ist nicht schlecht. allerdings würd ich dir nen anderes empfehlen. es heißt Jetzt lerne ich Spieleprogrammierung mit Visual C++ und DirectX 9 (damit habe ich auch angefangen c++ zu lernen und ich fands gut).
    das vierte buch würd ich dir nicht empfehlen, da es ein Taschenbuch ist, und somit keine CD mit beispielprogrammen und einer entwicklungsumgebung dabei ist.
    Das letzte buch in deinen Links ist meines erachtens für den einstieg ungeeignet. ich hatte es selbst einmal und weiß daher wovon ich spreche^^
    Aber wie gesagt ich würde dir so wie so C# empfehlen, wenn du schon neu anfängst.


    hoffe ich konnt dir nen stück weiterhelfen.

    mfg Flu.

    P.S. wenn dir der beitrag geholfen hat wär ne BW nicht schlecht
     
  3. 2. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    ich kenne zwar keines der bücher, würde aber eher zum 1. oder 2. tendieren da diese eher auf das abzielen was du suchst denke ich. für einen einstieg in c++ würde ich jedoch zu "C++ Primer Plus" raten, ist mehr oder weniger die Referenz am c++ - Buchmarkt und erklärt sehr schön die Konzepte und Spracheigenschaften.

    Was du brauchst ist auf jeden Fall ein ordentliches Entwicklungswerzeug, würde dir hier zu Visual Studio 200x raten.
     
  4. 2. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    warscheinlich wirst du es schon oft gehört haben aber das kannste dir komplett in die haare schmieren... für diese ganzen bücher werden kenntnisse in C++ vorrausgesetzt.
    ich würde dir eher empfehlen C zu lernen... ich hab früher auch mit C++ angefangen, bin dann aber auf C umgestiegen weil C++ objektorientiert ist und ich denke, dass man daurch nicht versteht wie ein computer funktioniert (was unabdingabr ist wenn du ein spiel programmieren willst, dass ruckelfrei läuft). und dann fang mit einfachen sachen an
     
  5. 3. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    GameDev.net Game Development Community

    das könntest du brauchen.
     
  6. 4. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    C# is moderner -> richtig
    C# ist einfacher -> richtig
    aber
    bei größeren projekten is C# im Code unübersichtlicher
    C++ ist schneller
    C++ hat mehr aufem kasten
    C++ ist die sprache, mit der alle spieleschmieden programmieren. Wenns um Spieleprogrammierung geht ist C++ nunmal die erste wahl.

    also da du ein Spiel programmieren willst nimm C++ , denn C++ ist eindeutig die mächtigere Sprache.
    Nix gegen C#, nur bei C++ wirst du nirgends eingeschränkt und ist halt die Schnellste Programmiersprache der Welt
     
  7. 4. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Stimmt schon das C++ schnell ist, und das jede Spieleschmiede mit C++ programmiert ist auch klar.

    Aber für ein 2D Spiel braucht man keine bis ins letzte auf Performance getrimmten Sprache.
    Ich empfehlen dir C# (mit XNA Framwork) wenigstens eine Chance zu geben und es dir anzuschauen.

    Und was das .NET Framework in Sachen Gaming bietet zeigen die Videos glaub ich ganz gut:
    XNA Racing Game - YouTube
    XNA - YouTube


    P.S
    In Bezug auf Spiele ja, aber allgemein gesehen nicht richtig.
     
  8. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    ich könnte ja auch mit Microsoft Visual C++ 2008 Programmieren.

    Aber da ja nun mal C++ selber am schnellsten ist ziehe ich das vor.

    Aber ihr meint ich sollte erst C lernen bevor ich mit C++ anfange hmm.

    C klingt schonmal nich schlecht da ja erstmal keine Objektorientierung dabei ist.

    Was mich auch in Java viel verwirrt hatte.


    Ok was für aktuelle Bücher/Ebooks für C würdet ihr mir den empfehelen?

    mal so nebenbei Was kostet den einmalig Microsoft Visual Studio 2005/2008?

    Ist es dan auch wirklich einfach von C auf C++ umzusteigen?


    Die Grafik vom Spiel sollte später mal so aussehen zb.

    wie Cossacks,Age of Empires 2,Industriegigant 2,Anno1503
     
  9. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Da hast du dir grafisch ja schon weng was vorgenommen. Visual C++ ist in der Express edition gratis (und auch komerziell einsetzbar). Der umstieg von C auf C++ ist alles andere als einfach, da c++ Objektorinetiert ist(wie schwer kann ich nicht sage, da ich weder c noch c++ kann, hab das aber schon oft gehört).
    Hier gibts VC++: Startseite
     
  10. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Java ist die einzigste Sprache die 100% Objektorientiert ist. C++ im großen und ganzen zwar auch ist aber halt nicht platformunabhängig.

    Du Hast gesagt:

    Was meinst du mit ein bisschen ? Sag mal was du kannst, ob du zu Arrays Vorgedrungen bist oder sogar bei der Oberflächenprogrammierung bist.

    C++ ist im großen und ganzen einfacher, jedoch um Welten leichter wenn es um Tastatureingabe und und und geht.

    greeZ kuhjunge
     
  11. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Python und C# sind ebenfalls komplett objektorientiert. Und c++ ist nicht komplett OOP (Bei Java, C# und Python sind sogar die Basistypen wie int und long Klassen)
     
  12. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    erstmal dazu: c++ ist plattformunabhängig, jedoch muss der Code erst für jede Plattform kompiliert werden, während bei java der code nur interpretiert wird. Deswegen laufen Java Programme ohne weiteres auch auf anderen Systeme. C++ programme (nach kompilieren) jedoch auch ohne probleme unter verwendung von einer gleichen entwicklungsumgebung und von plattformunabhängigen bibliotheken

    Evt. ist C# doch etwas besser für dich geeignet, denn gerade bei Spielen auftretende Probleme wie Garbage Collection ist dort bereits integriert. (managed c++ lass ich mal außen vor) Zudem ist die Problematik mit den Zeigern oft für Anfänger etwas verwirrend. Wenn du dich für C# entscheidest, dann solltest du dir evt. XNA, Tao.SDL und Managed DirectX (in dieser Reihenfolge) anschauen.

    Willst du doch bei C++ bleiben, dann verschaff dir erstmal eine gute Grundlage und beschäftige dich danach erst mit der Spieleprogrammierung. Ich würde dir auch hier SDL empfehlen, wenn du bei 2D bleiben willst, denn es ist relativ leicht und doch sehr umfangreich

    Egal was du machst. Erarbeite dir erstmal die grundlegenden Programmiertechniken, mach dir einen groben Plan zu deinem Spiel und setze deine Ziele nicht zu hoch (an Age of Empires 2 und Anno 1503 wirst du so bald nicht rankommen)

    Ich freu mich schon dein Spiel zu spielen, also viel Glück
     
  13. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Hallo,
    du hast einfach die falsche Frage gestellt

    Der eine sagt kauf die Xbox, der andere sagt kauf dir ne PS3.

    Guck dir beide Programmiersprachen C++ u. C# an, und entscheide selbst welches dir leichter fällt und deine Anforderungen erfüllt.

    Ich kann schon C++ aber probier mich gerade auch mal an C#
     
  14. 5. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    ich habe so was für dich zum lesen

    http://www.mitp.de/imperia/md/content/vmi/0920/0920_kap03.pdf

    C-Programmierung f?r Noch-Nicht-Programmierer Stefan Thiemert

    Also für die Programmierung mit C++ benötigst Du auf jeden Fall ein spezielles Programm, mit dem Du den Quellcode schreibst. Das geht zwar mit jedem besseren Texteditor (also nicht Notepad in Windows!), aber wesentlich komfortabler sind Anwendungen wie Microsoft Visual Studio. Die aktuelle Version des Visual Studio 2008 Express Edition gibt es sogar kostenlos zum Herunterladen. Das Paket enthält mehrere Programmiersprachen, u.a. auch Visual C++ 2008.

    Das Programm für die Übersetzung des Quellcodes in ein "echtes" Programm (z.B. EXE-Datei) nennt man Compiler. Genau genommen untersucht ein Compiler Deinen Quellcode auf syntaktische Korrektheit und anschließend erstellt ein Linker die Programmdatei im Maschinencode. Solche Werkzeuge sind bei Visual Studio bereits enthalten und können bequem über die Editor-Oberfläche ausgeführt werden.

    Ein gutes Grundlagenwerk zum Einstieg in C++ kenne ich leider auch nicht. Vielleicht helfen Dir die Artikel von MSDN weiter, die es zu Visual Studio gibt.

    Ich bin ja der Meinung, dass C++ nicht die geeignetste Sprache für Einsteiger ist,

    gruss finas
     
  15. 6. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Wenn du mit c++ arbeiten willst, dann hab ich hier nen paar Tutorials für dich:

    C++/C

    Code:
    http://www.microsoft.com/germany/msdn/webcasts/serien/MSDNWCS-0504-01.mspx <--- Webcast zu C++/CLI
    http://www.microsoft.com/germany/events/eventdetail.aspx?EventID=1032315007 <--- Managed/Unmanaged Code
    http://www.codeworx.org/directx_tuts_dd5.php <--- DirectX Tutorial
    http://tutorial.schornboeck.net/inhalt.htm
    http://www.volkard.de/vcppkold/inhalt.html
    http://www.informit.de/books/c++21/data/inhalt.htm
    http://bcb-tutorial.c-plusplus.de/inhalt.html
    http://www.robsite.de
    http://www.fh-augsburg.de/informatik/vor...tutorial/cyris/
    http://www.red-inferno.de/cplusplus/main.htm
    http://www.online-tutorials.net/c-c++-c/...als-t-1-58.html
    http://www.eggdrop.ch/texts/c/index.htm
    http://www.fz-juelich.de/zam/docs/bhb/bh...0095/d0095.html
    http://www2.hs-fulda.de/~klingebiel/c-vorlesung/index.htm
    http://www.cs.cf.ac.uk/Dave/C/
    http://www.it-helpnet.de/Dokumente/Progr...20Tutorial.html
    http://wwwuser.gwdg.de/~kboehm/ebook/inhalt.html
    http://einstein.drexel.edu/courses/CompP...c_tutorial.html
    http://ladedu.com/cpp/
    http://www.tutorialpage.de/Cpp2/index.php
    WinSock Tutorial-Reihe:
    http://www.online-tutorials.net/netzwerk/winsock-tutorial-teil-1-grundlagen-und-tcp/tutorials-t-10-5.html
    http://www.online-tutorials.net/netzwerk/winsock-tutorial-teil-2-hostnamen-auflsen/tutorials-t-10-6.html
    http://www.online-tutorials.net/netzwerk/winsock-tutorial-teil-3-udp/tutorials-t-10-7.html
    http://www.online-tutorials.net/netzwerk/winsock-tutorial-teil-4-mehrere-clients/tutorials-t-10-8.html
    http://www.online-tutorials.net/netzwerk/winsock-tutorial-fortgeschrittene-themen/tutorials-t-10-9.html
    
    mfg Flu
     
  16. 6. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Danke aber aktuelle Bücher wären mir lieber.

    Wie groß sind den die unterschiede zwischen C++ gegen Visual C++?

    Gibt es bei Visual C++ viele einschränkungen gegenüber von C++?

    Ist Visual C++ schneller als Visual C#?

    Was für aktuelle Bücher über C++ würdet ihr mir empfehlen

    Achja ich habe auf meiner Platte noch en Video2Brain Jetzt lerne ich C++ mit Helge Maus drauf.
     
  17. 6. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Visual C++ ist schneller als Visual C#

    visual C++ heißt nur das programm worin du c++ programmierst also z.B. Visual Studio 2008

    ein gutes anfänger buch für C++ ist -> amazon.de/gp/product/3827269679/ C%2B%2B-easy-Programmieren-einfachen-Beispielen/

    ich kann dir nachwievor nur zu C++ raten.. bist nirgends eingeschränkt
    ja dann lass deiner Fantasie mal freien lauf
     
  18. 8. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    aber was habe ich davon wenn ich die Visual Studio 2008 express edition habe?

    Diese Version gibts doch viele einschränkungen da kann ich ja nur Konsolenanwendungen schreiben?

    soll ich die Pro oder Teamsuite holen?

    C++ gefällt mir irgendwie viel besser wie Java.
    Die Syntax scheint mir irgedwie schwer aber auch leichter zu sein.
    Ich arbeite mich gerade in C++ ein.

    Was ich schon in Java kann sind

    -Variablen deklarieren
    -Datentypen unterscheiden
    -Arrays deklarieren
    -Kontrollstrukturen If-else Switch-Case
    -Methoden deklarieren
    -Tastatureingaben auslesen inputstream
    -Datentypen umwandeln

    Ne Oberflächenprogrammierung bin ich noch lange ned.
    Da ich mich ja schön länger nicht mehr mit dem Programmieren beschäftigt habe.

    Habe mal ein textadventure in Java angefangen hab es auch vor wieder in C++ weiterzumachen.

    Ist bisher das größte Programm was ich mal angefangen habe.
     
  19. 8. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Hi,

    mit den Express Versionen von Visual Studio kannst du genau so Windows Anwendungen wie Konsolen Anwendungen schreiben.
    Ich denke für dich ist die Express Version ausreichend.

    Mit der Professional Version sind unteranderem einfach alle Programmiersprachen vereint im Programm. Soll heißen, du kannst C#, C++, VB.NET oder ASP.NET programmieren. Bei der Express Version musst du dir halt dann die C# Edition bzw. die C++ Edition runterladen.

    Die Team Version brauchst du erst recht nicht...
     
  20. 16. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Ich habe mir ja jetzt mal das XNA Framerwork angeschaut

    ist ja echt wahsinn wie schnell man da vorakommen kann

    und vor allem was man da so machen kann.

    Ich bin ja grad C++ am lernen aber,

    das heisst ja ich muss schon wieder auf eine andere sprache C# umsteigen muss?

    Ok eines vorweg mein Strategiespiel soll Epochenbasierend werden Steinzeit-Zukunft

    Was soll ich jetzt machen soll ich des C++ wieder vergessen und C# lernen?.
     
  21. 16. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Ich würde so vorgehen :

    Mach C# mit dem XNA (lernen wie spiele entwickelt werden [Theorie + Praxis])
    Wenn du dann dir mehr zutraust greif zu C++ und steig auf 3D um
    Da du dann in C#[XNA] schon erfahrung hast fällt dir der einstig in 3D bei C++ deutlich einfacher

    mfg CodiX
     
  22. 16. Mai 2008
    AW: Echtzeit-Strategiespiel 2D Programmieren C++

    Ja, das ist denk ich auch ein guter Weg (wer weiß eventuell willst du bei C#/XNA bleiben).
    Und da XNA volle DirectX Unterstützung bietet kannst du diese Erfahrung quasi komplett auf C++ übertragen, generell wird dich die gesammelte Erfahrung weiterbringen, egal auf welche Sprache du umsteigst.

    Achja: XNA Spiele sind auch auf ner Xbox lauffähig.
     
  23. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.