C++ Mit Dev-C++ angefangen, wie weiter?

bpblub

Cadet 4th Year
Registriert
Mai 2008
Beiträge
124
Hey Leute,

also wir haben eine kleine "Programmiergruppe" gegründet. Angefangen haben wir mit Dev-C++ und ein paar Tutorials im Internet, dazu haben wir ein paar Übungen gemacht um das ganze zu verarbeiten und zu verstehen. So, nun stehen wir vor der Frage, wie soll es weiter gehen? Sollen wir mit VC++ 2005/2008, Borland oder sogar mit VC++ 6.0 weiter machen? Wir haben zu allem diesen Bereichen genug Tutorials gefunden, also ist das kein Thema.

Zudem sollte ich zu uns noch was sagen. Wir besuchen allesamt zusammen die Fachoberschule in Richtung Datentechnik und dort lernen wir Java. Aber dort haben wir ein zulangsames Lerntempo in Programmieren und außerdem wollen wir nicht nur bei Java bleiben. Also haben wir uns überlegt, wir versuchen uns an C++, das ging auch soweit ganz gut. Wir wollen uns ganz langsam auf eine Art "Browsergame" hinarbeiten und das aber nicht in einem Browser sondern, als eigenen Client, weil wir damit dann weiterarbeiten können. Mit den Browsergame, wollen wir dann ein paar 2D Effekte einbinden und wenn wir dann ganz gut drauf sind, so in 5 Jahren wollen wir auch mal mit 3D anfangen. Also wir machen uns da auch keine unrealistischen Vorstellungen, das wir jetzt von heute auf morgen 3D Effekte Programmieren können. Aber mit was arbeiten wir am besten weiter um diese Ziele zu erreichen?

lg
blub ; )
 
Für euer Projekt wäre doch gerade Java oder C# eine geeignete Sprache.
 
Jo, aber wir haben gesagt bekommen, für sowas wäre eine gute Option C++, weil viele gute Spiel in C++ geschrieben sind, z.B. wie Gothic. Wir wissen halt echt nicht, wie wir weiter machen sollen.
 
hm... aber Java ist für 3d nicht geeignet .. es gibt zwar Java3D , aber damit lässt sich meines Wissens nach nicht sonderlich viel machen. Würde auch C++ oder C# nehmen :)

Ich weiß nicht in welcher Sprache es ist, aber schaut euch doch mal die Quellcodes von Quake3 oder Nexiuz (richtig geschrieben!?) an :)
 
Also wenn dich 3D-Programmierung und Spiele interessieren, kann ich dir Ogre3D empfehlen.

Die dazugehörigen Tutorials sind echt spitze und man sieht auch sehr schnell Erfolge, was unheimlich motiviert (nach ner halben Stunde programmieren läuft man durch seine "eigene" 3D-Welt). Die Engine ist Open Source und steht unter der LGPL, du kannst also alles damit machen was du willst.

Allerdings lernst du dort nicht unbedingt programmieren, ist eher Mittel zum Zweck.
 
Jo, ich werd es mir trotzdem mal anschauen, unser Ziel ist es so viel wie möglich zu lernen. ; )

Und welches Programm sollen wir dazu benutzen?
 
Zuletzt bearbeitet:
also, mit Java kann man auch ganz nette 3D-Welten basteln. So schlecht ist Java3D nun auch wieder nicht; aber wem es nicht gefällt, der kann auch auf andere Bibliotheken zurückgreifen, wie jpct (http://www.jpct.net/) oder in Kombination mit http://www.lwjgl.org/

jpct ist recht einfach umzusetzen - da reicht auch das Tutorial aus, um einfache Projekte davon abzuleiten. Sogar 3DS-Dateien lassen sich importieren und mit Texturen versehen. Beides unterstützt sowohl Softwareendering als auch OpenGL. Was will man mehr? ^^
 
Du kannst mit C++ mit Open GL WX und DX Coden. Es gibt z.B Bücher für DX9 und 10. Für C++ empfehle ich dir C++ von A bis Z.
Du kannst wegen Spielen die Sorucen von Spielen angucken, z.B. Glest, Nexuiz, Crystal Space Engine, Quake III Engine.
 
Ok, dann danke ich für die netten und guten Antworten, ich hab nämlich in einem anderen Forum mal gefragt und die haben mich zu zugespawmed und gemeint, wir sollen es sein lassen. ; )
Also vielen dank!
 
Du solltest dich auf gar keinen Fall entmutigen lassen, solltest dir aber im klaren sein, dass Spieleentwicklung die Königsdisziplin ist :)

Fang mit ganz einfachen Sachen an und taste dich langsam voran. Mit einem MMORPG brauchst du erst gar nicht anfangen... :D
 
Ok, wir wollten als erstes so langsam Richtung eine Art "Browsergame" gehen. Wir machen das als ein eigenes Client, damit wir das weiterentwickeln können. Zurerst mit ein paar kleinen 2D Effekten arbeiten und dann irgendwann in 5 Jahren mit 3D anfangen. Das wird doch möglich sein?
 
Wie er schon gesagt hat, will er das ganze nur nach dem Prinzip eines Browsergames aufbauen, aber einen eigenständigen Client entwickeln.

C++ ist bestimmt eine geeignete Sprache dafür, bei performanten 3D Anwendungen fast umumgänglich. Im übrigen kommt man mit weniger als 2 Jahren auch hin, zB per OpenGL was 3dimensionales darzustellen, wenn man nur am Ball bleibt.
 
Jo, das Problem ist dabei nur, dass ich noch eine Freundin, eine Schule (bald ein Studium), ein Freundeskreis habe und sportlich sehr aktiv bin, geht das nunmal nicht so schnell wie ich es gerne hätte. Ist für später OpenGL oder Directx die bessere Variante? Weil ich schon oft gehört habe, ich solle lieber Directx nehmen anstatt OpenGL.
Jo, einen eigenen Client mit ein Prinzip von einem Browsergame. Übringends bin ich nicht der einzigste der C++ lernen will. Wir haben eine kleine Gruppe gegründet mit Homepage und Forum, wo wir uns beraten und austauschen. Also wer interesse hat C++ zu lernen oder es schon kann und sein Wissen teilen will um mit uns später an diesen Projekt zu arbeiten, ist herzlich Willkommen.
Unsere Homepage:
www.selfless-cpp.de.vu

Nur wer interesse hat, wenn nicht bitte nicht zu spawmen. ; )

lg
blub ; )
 
Ich kann euch jedenfalls viel Frust prophezeien bis ihr in C++ euer Ziel erreicht, vor allem, wenn ihr nicht eure ganze Freizeit investieren wollt. Mit Flash werdet ihr am schnellsten an euer Ziel kommen bezüglich der 2D-Animation. Flash-Spiele können sowohl im Browser, als auch als stand-alone laufen. Netzwerkmöglichkeiten gibt es auch. Seit ActionScript3 geht es sogar in Objektorientierte Richtung.
So ganz nebenbei...kein Mensch lädt sich für ein Browsergame einen client herunter. Wenn ihr wollt, dass mehr Leute als ihr selbst damit spielen, dann baut das lieber direkt für Browser.

Ich will keinesfalls C++ madig machen, aber für eure Bedürfnisse ist das glaube ich keine gute Wahl. Könnt ihr ja nebenbei lernen :X
 
Es kommt uns nicht darauf an, ob das Spiel ein Erfolg wird oder nicht. Und wir wollen einfach nur einen eigenen Client nehmen, weil man damit einfach mehr machen kann. Später kann man sicher mit dem eigenen Client auf 3D Sachen umsteigen, wenn wir genug Erfahrung haben und versuch das mal im Browser zu machen? Ich denke wie wir das vor haben, einfach nur lernen ist finde ich gar nicht so schlecht.

lg
blub
 
Ist für später OpenGL oder Directx die bessere Variante? Weil ich schon oft gehört habe, ich solle lieber Directx nehmen anstatt OpenGL.
DirectX ist eine proprietäre API und extrem plattformabhängig, alleine deswegen würde ich schon zu OpenGL tendieren ;)
Im Bereich der Spieleentwicklung wird oft DirectX verwendet (Ausnahmen bestätigen die Regel), bei industriellen Anwendungen (Visualisierung) hingegen dominiert OpenGL, auch aufgrund der besseren Portabilität.
Um das volle Potential beider APIs auszuschöpfen ist aber auf jeden Fall fundiertes Wissen im Bereich Computergrafik nötig, einen guten Einblick (und auch gleich die OpenGL-Bibel) gibts im Redbook (http://www.opengl.org/documentation/red_book/).
Aber langsam an die Sache ran gehen...
 
Auf Linux gibt es eben zum Beispiel keinen vernünftigen DirectX Support (höchstens per WINE/Cedega, aber in der Regel langsamer als unter Windows). Deshalb würde ich auch zu OpenGL raten (WoW zum Beispiel kann beides und ist deshalb recht gut auf Linux lauffähig (wenn auch nur mit WINE).
 
Vielleicht formulierst du mal, was du dir unter "mit dem eigenen Client kann man mehr machen" vorstellst. Ich weiß nicht genau wie dein Wissensstand ist, aber ich vermute unter Client stellst du dir einfach ein Fenster mit Benutzeroberfläche vor und entsprechende Reaktionen, wenn man auf Knöpfe drückt. Das kannst du alles im Browser ebenfalls (und leichter) realisieren. Ist mir nicht ganz klar, wo du den Vorteil in einem extra Client siehst.

Zu OpenGL vs. DirectX würde ich sagen, dass ist wirklich kaum von Bedeutung, wenn du nicht auf professioneller Ebene arbeiten willst. Wenn du keine eigene Engine schreiben willst, muss du dich ja danach richten, womit die Engine arbeitet. Freie Engines arbeiten in der Regel mit OpenGL.
 
gerade nochmal bei jpct.net geschaut - die Demos sind wirklich interessant und zeigen, welche Möglichkeiten man z.B. mittels Java, OpenGL und Webstart hat (als Alternative zu den mehr als nur etwas lästigen Java-Applets)

hoffe, der Link lässt sich öffnen:
http://www.jpct.net/demos/jbullet/jbullet.jnlp
(leider ohne Quellcode, was die Sache schon recht nervig macht ..)
ansonsten: http://www.jpct.net/demos.html


zumindest könnte man auf dieser Basis sog. Browsergames erzeugen, die dann allerdings in einem extra Fenster laufen würden und Java voraussetzen.
 
Zurück
Oben