Seite 1 von 1
					
				Frage zum Einstieg
				Verfasst: 26.06.2011, 20:06
				von Noxas
				Hallo Leute,
ich wollte mal fragen was die "beste" Programmiersprache ist, wenn man in ferner Zukunft mal mit machen möchte ein Spiel zu programmieren und wisst Ihr Seiten für Tutorials oder so etwas in der Art? 
Ich frage, weil ich in der Schule jetzt 1Jahr C++ und HTML hatte und das echt die einzigen Fächer waren die mir lagen und auch ziemlich viel Spaß gemacht haben und im nächsten Schuljahr habe ich diese Fächer nicht mehr. :(
Ich würde deswegen sehr gern im Internet weiter Programmiersprachen lernen und damit auch mal irgendetwas sinnvolles zu machen. Ich hab schon im Internet versucht irgendwie herauszufinden wie ich anfangen soll, allerdings weiß ich nun nicht welche Sprache ich mir genau anschauen soll und von welcher lieber die Finger lassen sollte.
Ich hoffe Ihr könnt mir da weiter helfen und sagen wie Ihr angefangen habt die Sprachen zu lernen.
MFG,
Noxas
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 20:13
				von IlikeMyLife
				So habe ich damals angefangen, obwohl ich nicht mit C/C++ sondern Basic angefangen habe:
- C/C++-Kenntnisse vertiefen
- Grundkenntnisse in DirectX erlangen
- Kleinere 2D-Projekte durchziehen ( Tetris, Pong etc. )
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 20:15
				von j.klugmann
				Es gibt keine "beste" Programmiersprache. Du kannst auch in jeder Sprache dein Spiel schreiben, das macht keinen Unterschied. Aus persönlicher Tendenz kann ich dir folgende Sprachen empfehlen:
* Haskell
* Erlang
* Python
* Javascript
* Objekt-Pascal
Anstatt DX kannst du auch OpenGL nutzen, das läuft dann auf beinahe allen Plattformen.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 20:47
				von Schrompf
				Wenn Du schon in C++ reingeschnuppert hast, kannst du auch bei C++ bleiben. Das ist eine sehr mächtige, aber auch potentiell problematische Sprache. Aber wie die anderen schon gesagt haben, ist quasi jede Programmiersprache für Spiele oder Anwendungen geeignet. Für Desktop-Anwendungen würde ich ansonsten C# empfehlen, was etwas zugänglicher als C++ ist und auch eine gute Auswahl an Bibliotheken bietet. Andere Leute bevorzugen Python, Java, Delphi oder wasweißich. Für Spiele, die im Browser laufen, ist dagegen Flash zu empfehlen. 
Es gibt dann aber auch noch Werkzeuge zur Spieleerstellung, die Dir deutlich schneller Ergebnisse verschaffen können. Hier im Forum ist Unity beliebt, dass (per Plugin) auch im Browser direkt auf Deiner Webseite spielbar wäre. Auch bei diesen Werkzeugen muss man am Ende noch einiges programmieren, nur zusammenklicken funktioniert quasi nicht. Im Falle Unitys ist das eine C#-ähnliche Sprache. Das Plugin für Unity ist inzwischen auch gut verbreitet, auch wenn es natürlich nicht an die Marktdurchdringung von Flash rankommt. Und wenn Du mit ein paar Problemen auf Userseite leben kannst, geht auch Java im Browser.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 20:58
				von IlikeMyLife
				wo wir beim Thema sind:
Java + DirectX = Möglich?
Java an sich ist eine eh recht einfache Programmiersprache in meinen Augen. Nur, währe diese auch DirectX-Kompatibel für beispielsweise einem 3D-RPG?
oder sollte man lieber bei folgenden Varianten bleiben:
Java + OpenGL
und 
C++ + DirectX
EDIT:
auch wenn nicht für jeden grad ersichtlich ist, was ich genau mit dieser Fragestellung bezwecken will... das sing punkte, über die man sich anfangs in meinen augen im klaren sein sollte
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 21:52
				von Chromanoid
				Java und DirectX wäre zwar möglich, aber das würde Javas Pluspunkt bezüglich Plattformunabhängigkeit zu nichte machen und dann würde ich eher zu C#/SlimDX/XNA raten, das ist eine ähnlich einfache und bequeme Sprache.
Java + OpenGL ist wesentlich sinnvoller sowie populärer als DirectX+Java (mir ist noch keine Bibliothek für Java+DX untergekommen). Einige Engines/Bibliotheken ermöglichen dabei mittlerweile Kompilieren nach Android. libGDX und jMonkeyEngine3 kannst du dir mal anschauen...
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 22:34
				von Noxas
				Heißt das, das ich C++ lassen sollte und lieber Javascript und OpenGL lernen sollte?
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 22:38
				von IlikeMyLife
				ist geschmackssache :-)
ich habe mich die ganzen jahre von OpenGL fern gehalten und lieber auf der DirectX-Seite aufgehalten. Was von beiden Vor oder Nachteile hat, hängt in erster Linie davon ab, wofür du Spiele Programmieren willst ( Webseiten, PC-Games, Handy etc. )
beziehungsweise in welchem Umfang ( Kleinere 2D oder große 3D-Projekte  etc.)
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 23:23
				von dot
				Für den Anfang ist es eigentlich total egal. Denn zuerst heißt es sowieso mal: Programmieren lernen. Wenn du dich mit C++ schon angefreundet hast kannst du dir ja einfach mal die 
SFML holen und ein wenig damit rumspielen. Ansonsten heißt mein Tip für Anfänger C#.
Was OpenGL vs. Direct3D angeht: Ich denk die Frage stellt sich zum jetzigen Zeitpunkt nicht. Und später ist es sowieso eher nur die Frage man zuerst lernt...
 
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 26.06.2011, 23:56
				von Chromanoid
				Noxas hat geschrieben:Heißt das, das ich C++ lassen sollte und lieber Javascript und OpenGL lernen sollte?
Nur falls du es nicht weißt (kommt mir im Kontext so vor): Java ist nicht JavaScript. Mit WebGL kann man auch mit javascript OpenGL Zeug programmieren, aber ich habe in meinem Post von Java gesprochen.
Schau dir sonst mal die einzelnen Programmiersprachen an und entscheide einfach intuitiv, am Besten erst nachdem du dir ein Entwicklungsziel definierst hast.
 
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 27.06.2011, 12:47
				von IlikeMyLife
				Chromanoid hat geschrieben:Schau dir sonst mal die einzelnen Programmiersprachen an und entscheide einfach intuitiv, am Besten erst nachdem du dir ein Entwicklungsziel definierst hast.
@ Noxas:
Einfach gesagt, stell dir die Frage, was du gerne irgendwann mal für Spiele Programmieren möchtest:
- PC-Spiele
- Handy-Spiele
- Browser-Games
- etc.
 
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 27.06.2011, 18:07
				von Noxas
				Würde sehr gern in ferner Zukunft mich an PC Spielen wagen. :)
Welche Programme brauch ich dafür und hat vielleicht einer Links für Tutorials und den Download zu den Programmen oder eine Empfehlung zu einem netten Buch dazu? :)
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 27.06.2011, 22:44
				von IlikeMyLife
				Am wichtigsten ist eine Entwicklungsumgebung.
Ich nutze beispielsweise das Visual Studio von Microsoft für C++.
Speziell für die Spieleentwicklung wirst du ein SDK benötigen. Beispielsweise DirectX oder OpenGL.
Links und Bücher kann ich dir leider nicht nennen, da meine Vorräte alle veraltet sind.
Auf jeden fall rate ich dir, nicht direkt mit 3D an zu fangen, sondern die ersten Kenntnisse in 2D zu gestalten.
Tetris, Pong, etc. eignen sich recht gut dazu.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 01:42
				von Specialist
				Solltest du dich für C++ und DirectX entscheiden, so kann ich dir die Tutorials aus der DirectX-Dokumentation empfehlen. Die sind sehr einfach gehalten und beschränken sich wirklich auf das Wesentliche.
Damit hast du zumindest einen ersten Einstieg und kannst selbst etwas rumprobieren bis du dich auf komplexere Beispiele oder Tutorials konzentrierst.
So hab ich es damals gemacht und es klappte ganz gut. Wenn du allerdings noch nicht so viel Erfahrung mit C/C++ hast, solltest du erstmal einfache Programme (Konsole / WinAPI) schreiben.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 09:18
				von joggel
				Wenn Du dich schon etwas mit C++ auskennst:
Also ich würde auch mal ganz spontan 
SFML einwerfen.
Soll recht gut sein.
Und, was noch wichtiger ist, man erziehlt schnell Ergebnisse. Darum gehts ja, und man lernt nebenbei C++.
Wenn Du schon bei C++ bist, dann kannst Du, wenn du deine Gehversuche mit SFML wagst, mal nebenbei nach Design-Pattern (Entwurfsmuster) ausschau halten (aber das vlt. mal nur so nebenbei oder später). Und dann mal ein 
kleines Spiel machen.
Kurz:
Learning by Doing
Halt mit zB. SFML.
Gruß
 
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 14:28
				von Jaw
				Werkzeuge wie Programmiersprachen und Medienprogramme sind mehr oder weniger Austauschbar. Wenn du mit einer Sprache mal ein richtiges Projekt auf die Beine gebracht hast, wirst du das auch mit einer anderen Sprache auf die Reihe kriegen. Die Grundmuster ähneln sich ausreichend. Wichtig sind dann so Disziplinen wie sauberen Code schreiben, Fehler finden und beseitigen, guter Programmaufbau, gutes Gamedesign, fertig werden, etc. Egal welche Sprache du nun nimmst, es wird dir nie den Weg verbauen bei Bedarf umzulernen, und viel Gelerntes kannst du auf die neue Sprache übertragen.
-JAW
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 18:10
				von IlikeMyLife
				um ein beispiel zu nennen, was Jaw meint:
wer einen Bubble-Sort in C++ schreiben kann, kriegt es auch in Java, Basic, etc. hin ;-)
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 18:20
				von Noxas
				Bin gerad ehrlich gesagt bisschen verwirrt. also ich bleib dann jetzt bei C++ und was soll ich noch dazu lernen, SFML, DirectX oder OpenGL ?
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 18:32
				von Aramis
				SFML ist relativ leicht zu verwenden, ziemlich stabil, unermesslich lahm (zumindest 1.6x) und kann eine ganze Menge - natuerlich auf 2D-Grafik beschraenkt. 
DirectX und OpenGl sind selber nur Schnittstellen, um damit was sinnvolles machen zu koennen, musst du dich parallel aber auch noch in die Theorie hinter 3D-Grafik allgemein einarbeiten. Davon wuerde ich abraten solange du in C++ noch nicht sattelfest bist (was, realistisch betrachtet, mindestens 2 Jahre dauert, eher 5). Sowohl OpenGl als auch DirectX sind zudem nicht gerade Musterbeispiele fuer idiomatische C++-Programmierung.
Daher wuerde ich eher zu SFML raten. Am besten, du suchst dir einfache, in einem realistischen Zeitrahmen umsetzbare Projekte aus (z.b. Clones klassischer Spiele wie Breakout oder Tetris). Auch das wuerde ich aber nicht ohne eine gewisse Sicherheit in C++ probieren, sonst macht es naemlich auch nicht wirklich Spass.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 18:32
				von Tiles
				Such dir doch einfach ein Spiel aus das du gern programmieren willst. Und dann schau als zweiten Schritt welche Möglichkeiten sich dafür anbieten.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 20:13
				von Alexander Kornrumpf
				IlikeMyLife hat geschrieben:um ein beispiel zu nennen, was Jaw meint:
wer einen Bubble-Sort in C++ schreiben kann, kriegt es auch in Java, Basic, etc. hin ;-)
Achso und ich dachte wer Bubble-Sort verwendet, egal in welcher Sprache, wird einfach erschossen.
 
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 20:15
				von Krishty
				Ich werde auch weiterhin keine Ironiemarkierungen setzen – selbst, wenn man was offensichtlich augenzwinkernd sagt, hört der Spaß für irgendwen sofort auf. Oder auch zwei Antworten später.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 20:30
				von Alexander Kornrumpf
				Keine Ahnung ob du jetzt mich meinst, aber es war durchaus augenzwinkernd gedacht. Als würd ich wirklich jemanden erschießen.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 20:38
				von Krishty
				Ich sage auch oft im Scherz erschießen, wenn ich eigentlich nur Folter und Verstümmelung meine. Redmond und so.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 28.06.2011, 20:43
				von Alexander Kornrumpf
				In irgendeinem Addison-Wesley Buch (maybe Stroustrup himself?) wird in einer Fußnote "auf den Parkplatz zerren und verprügeln" als angemessene Strafe propagiert.
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 02.07.2011, 12:17
				von Jaw
				Bubblesort ist einfach zum Üben :) Ich glaube man muss heute doch kaum noch überhaupt selbst ein Sort schreiben. Und es ging doch wohl eher um die prinzipielle Trennung zwischen Konzept (Algorithmus) und Umsetzung (Sprache). So was ist der Ironiemarkierer? Back to topic?
-JAW
			 
			
					
				Re: Frage zum Einstieg
				Verfasst: 04.07.2011, 11:12
				von IlikeMyLife
				Jaw hat geschrieben:Bubblesort ist einfach zum Üben :) Ich glaube man muss heute doch kaum noch überhaupt selbst ein Sort schreiben. Und es ging doch wohl eher um die prinzipielle Trennung zwischen Konzept (Algorithmus) und Umsetzung (Sprache). So was ist der Ironiemarkierer? Back to topic?
Danke Jaw, genau dass wollte ich damit ausdrücken ;-)
EDIT:
Back to Topic:
- Überleg dir was du später gerne Programmieren möchtest für Spiele.
- Erkundige dich, was du dafür brauchst ( zur not schreib es hier rein. es gibt hier auch personen die es auf einfach ausdrücken )
- Und wir können dir weiter helfen