Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

01.04.2009, 15:23

2D Spiele RPG's mit welcher Sprache?

Hallo ich bin schon länger verzweifelt nach der Richtigen Sprache für mich ^^

Ich würde das ganze nur als Hobby Betreiben hab auch schon 1 2 Erfahrungen mit VB 2005 Express gemacht. Aber VB wird doch auf vielen Seiten nicht empfohlen deswegen suche ich eine neue Sprache die ich mir langsam beibringe wenn mal zeit da ist. Sie sollte "leicht" lernbar sein und es sollte gute Literatur / Tutorials geben.

Meine Ziele wären


2D RPG wie Rogue Zelda

Tower Defense Spiel

Langfristige Ziele

evtl ein 2D MMO


und sollte ich wirklich viel spaß dabei haben würde ich evtl noch auf die Mobile Schiene und kleinere APPs fürs Iphone schreiben.


Ich hab mich wirklich viel Informiert viele Stickies in allen möglichen Foren gelesen aber ich komme auf keine Sprache der eine Sagt C++ für den Anfang der andere Java der andere schwört auf Phyton....


nun hab ich eben die Seite hier entdeckt und ein Buch was sehr interessant aussieht C++ für Spieleprogrammierer

meint ihr das wäre das richtige für mich? danke schonmal für alle Antworten


Move

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

2

01.04.2009, 15:28

C++ ist quasi der Industriestandard. Wenn du Ausdauer hast machste damit nichts falsch. Das Buch ist auch super ;) Aber da du von leicher erlernbar sprichst ...

Ich persönlich würde dir unter den vielen Alternativen zu C# raten. Erfahrung mit .Net hast du ja schon und unter C# hast du dann Zugriff aufs XNA Framework. Damit geht dann so einiges. Für ein MMORPG würde ich allerdings eher nicht zu .Net greifen ;)

Edit: iPhone heisst mehr oder weniger automatisch Objective-C. Finde ich persönlich gruselig ...

3

01.04.2009, 15:35

Danke schonmal aber nein ich hab keine Erfahrung von .net ^^ vll hab ich das unwissentlich benutzt bei meinem paar VB Projekten aber nicht bewusst.

mh dann muss ich wohl zu C++ auch wenn es schwer scheint.

-EDIT-

Würde es nicht eine einfachere Sprache geben um meinen Anforderungen gerecht zu werden?

Move

Anonymous

unregistriert

4

01.04.2009, 15:44

Wer sagt denn, dass etwas einfach sein soll?

Dieses ganze VB-Lari-Fari-Ich-Klick-Mir-Schnell-Etwas-Zusammen-"Entwickeln" ist doch ein Armutszeugnis für die komplette IT. Wie gut das Microsoft VB sowieso bald immer mehr abstößt genau wie J# und diese ganzen anderen Fehlentscheidungen.

Mit C++ bist du Top bedient und hast auch mehr Chancen auf dem Arbeitsmarkt.

Lerikson

Alter Hase

Beiträge: 412

Wohnort: nördlich von Hamburg

Beruf: Schüler

  • Private Nachricht senden

5

01.04.2009, 15:46

// [edit] Da unsigned schon gesagt hat was sache ist streich ich den Teil

Ich kann dir aber ein paar Links zu Tutorials geben:

http://tutorial.schornboeck.net/
Mit dem Tutorial habe ich (vor 1 Jahr) angefangen C++ zu lernen

http://de.geocities.com/throni3/cpp/Anfang.html
Das hat mir ein Freund empfohlen (ist auch gut)

naja und wenn du Bücher suchst:

Zum generellen Einstieg in C++ habe ich mir

"Grundkurs Software Entwicklung mit C++"-- von Dietrich May gekauft
ist einfach geschrieben und gut erklärt....
Errare est humanum. -Windows ist menschlich ;-)

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

6

01.04.2009, 17:17

Python soll mit PyGame zusammen relativ schnelle Ergebnisse abwerfen und du kannst Python später immer noch in ein C++ Projekt als Skriptsprache einbetten ;)

Was deine Zielvorstellungen angeht würde ich vielleicht erstmal kleiner Anfangen. Sowas wie Zelda ist schon alles andere als trivial. Vielleicht mal mit Pong anfangen, dann vielleicht einen 2D Clickshooter ala Moorhuhn.

Das ist übrigens die bisherige Reihenfolge der Contests, die wir im SFML-Forum veranstalten ;) Falls du SFML noch nicht kennst, ist durchaus einen Blick wert.

Kasenoru

Frischling

Beiträge: 79

Beruf: Softwareentwickler

  • Private Nachricht senden

7

01.04.2009, 20:11

Zitat

Meine Ziele wären


2D RPG wie Rogue Zelda

Tower Defense Spiel

Langfristige Ziele

evtl ein 2D MMO


2D RPGs also, da wird dich Visual Basic 2005 EE nicht sehr weit bringen.
Keinesfalls solltest du mit C# .NET und Microsoft XNA oder ähnlichem arbeiten,
auch wenn XNA für viele sehr verlockend klingt.

Zudem solltest du wissen, dass die Sprache allein bei weitem nicht ausreicht und das mit dem MMO solltest du sowieso erstmal ganz weit
nach hinten packen.

Ich kann dir hier ein paar Tipps von meiner Seite geben, auch wenn du jetzt vielleicht noch nicht alles verstehst.

Ich rate dir zu C/C++. Kenntnisse in Assembler sind mehr als Vorteilhaft. Arbeite dich Stück für Stück in die SPRACHE ein. D.h. lass die Hände von Direct3D 9 & 10, OpenGL, SDL
und ähnlichem und lerne zunächst die Sprache. Denn letzteres benötigst
du für ein schönes 2D RPG oder andere Genres sowieso nicht. Im Gegenteil, es wird dir dadurch sogar noch schwerer fallen ans Ziel zu kommen.

Wenn du C/C++ erlernt hast, versuche dich in die 2D Grafikprogrammierung einzuarbeiten. Verwende dazu am besten
die Grundfunktionen der Windows API bzw. X11 unter Linux.

Hast du die Grundfunktionen erstmal verstanden, so versuche
ein eigenes Grafiksystem(Bei der Windows API z.B. auf Basis der
CreateDIBSection Funktion) zu entwerfen.

Versuche anschließend, mit der Hilfe von Assembler und MMX/SSE dein
Grafiksystem auf höchstleistungen zu optimieren. Für das spätere 2D RPG empfehle ich dir eine geringe Grafikauflösung von 640x480 oder 544x416(Im Vollbild dann mit Rand). Es gibt auch noch weitere Tricks mit denen du dein System optimieren kannst, die alle ihre Vor- und Nachteile haben.

Es kommt ganz darauf an, welche Anforderungen dein Spiel an die Technik stellt. Aber optimieren solltest du aufjedenfall, manche sind nämlich noch mit 850 Mhz unterwegs und es wäre doch schade, wenn das Spiel auf älteren Systemen von Freunden/Bekannten nicht richtig läuft.

Und ohne Musik und Sound ist es bei vielen Spielen recht langweilig. Hier gilt das gleiche wie beim Grafiksystem. Es muss nicht immer die "ultimative" Audioengine FMODEX (http://www.fmod.org) sein, wenn man Ende sowieso nur ein paar kleine Funktionen für WAV und MIDI verwendet werden.

Wenn du das erstmal geschafft und verstanden hast, stehen dir für das Spiel theoretisch alle Türen offen.

Aber selbst das reicht noch nicht ganz aus. Denn was ist mit den ganze Hilfsprogrammen, die du für ein 2D RPG benötigst? Wie willst
du deine Spielkarten erstellen? Deine ganzen Daten verwalten? Die
Gespräche zwischen Charakteren und deren Handlungen?

Um Hilfsprogramme wirst du nicht drumrum kommen. Wenn du aber C/C++ gewählt hast, hast du sehr gute Karten. Verwende hier
am besten Qt4 als Toolkit für die Entwicklung von grafischen Benutzeroberflächen.

Wenn du das alles drauf hast, bist du bereit für ein erstes, größeres 2D Spiel. In deinem Fall ein 2D RPG. Dieser ganze Prozess dauert natürlich mehrere Jahre. Wieviele Jahre kann man nicht genau sagen, dass kommt ganz darauf an, wieviel Zeit du investierst und wie schnell du verstehst.

Tutorials zu dem Thema wirst du keine finde, zumindest keine wirklich tiefgreifenden und 100% kompletten Tutorials wie "Howto: Ein komplettes 2D RPG mit allen Hilfstools".

Es gibt allerdings sehr viele Tutorials für die Grundlagen der Grafikprogrammierung. Auch hier im Forum gibt es sogar einen extra Bereich für Tutorials.

Wie das im Internet aber nunmal leider so ist, ist nicht immer alles wirklich korrekt verfasst geschweige denn irgendwie überprüft worden. Oft ist es auch nicht immer die beste Lösung, die in einem Tutorial gezeigt wird.

Du solltest daher immer darauf, welche Tutorials du ließt. Solltest
du dich also jemals beim lesen eines Tutorials fragen:

Ist das so überhaupt richtig?
Geht das so und so nicht eigentlich schneller?

Dann probiere es am besten selber aus, dadurch kannst du nur noch mehr lernen.

Und wie K-Bal bereits gesagt hat -> Klein anfangen. Versuche auch für kleine Spiele ein paar erste Hilfsprogramme zu entwerfen. Z.b. bei einem Arkanoid-Klon könntest du einen kleinen Level-Editor mit Qt4 entwerfen.

Ich wünsche dir aufjedenfall viel Glück bei deinen Spielen und hoffe, das du uns hier mal später ein paar davon vorstellst :)

Solltest du Fragen haben so steht dir die Community hier immer zur Verfügung. (Ich hoffe, dass auch ich mal wieder mehr Zeit finde)

Mit freundlichen Grüßen

Kasenoru

K-Bal

Alter Hase

Beiträge: 703

Wohnort: Aachen

Beruf: Student (Elektrotechnik, Technische Informatik)

  • Private Nachricht senden

9

01.04.2009, 21:31

@Kasenoru:

Ich muss dir leider in einigen Teilen widersprechen. Ich finde es ist durchaus notwendig klein anzufangen, aber ich halte es durchaus für sinnvoll ein Framework wie SFML zu benutzen, sobald die Sprache gemeistert ist.

Zitat von »"Kasenoru"«


Wenn du C/C++ erlernt hast, versuche dich in die 2D Grafikprogrammierung einzuarbeiten. Verwende dazu am besten
die Grundfunktionen der Windows API bzw. X11 unter Linux.


Wenn ich Spiele programmieren will brauch ich nicht die WinAPI oder X11 kennen. Das ist trocken, frustrierend und nicht notwendig, wenn man erstmal ein Framework wie SFML benutzt. Möchte man dann später mal ne eigene Engine oder dergleichen schreiben hat man immer noch genug Gelegenheit sich damit zu beschäftigen.

Zitat von »"Kasenoru"«


Hast du die Grundfunktionen erstmal verstanden, so versuche
ein eigenes Grafiksystem(Bei der Windows API z.B. auf Basis der
CreateDIBSection Funktion) zu entwerfen.


Wie oben schon erwähnt halte ich das für zu viel des Guten. Das wär so als würde man sagen "du darfst erst Firefox benutzen, wenn du ihn selbst programmieren kannst".

Zitat von »"Kasenoru"«


Versuche anschließend, mit der Hilfe von Assembler und MMX/SSE dein
Grafiksystem auf höchstleistungen zu optimieren. Für das spätere 2D RPG empfehle ich dir eine geringe Grafikauflösung von 640x480 oder 544x416(Im Vollbild dann mit Rand). Es gibt auch noch weitere Tricks mit denen du dein System optimieren kannst, die alle ihre Vor- und Nachteile haben.


Du kannst doch nicht ernsthaft einem Anfänger raten Assembler zu lernen. Und das mit der Auflösung ist auch voll der Käse, das kommt immer darauf an was ich will. SFML kommt mit OpenGL support, es wird nicht nötig sein so tief in die Hardwaretrickkiste zu greifen.

Zitat von »"Kasenoru"«


Und ohne Musik und Sound ist es bei vielen Spielen recht langweilig. Hier gilt das gleiche wie beim Grafiksystem. Es muss nicht immer die "ultimative" Audioengine FMODEX (http://www.fmod.org) sein, wenn man Ende sowieso nur ein paar kleine Funktionen für WAV und MIDI verwendet werden.


Ich dachte es wär die ultimative, assembleroptimierte Grafikengine.


In den übrigen Dingen stimme ich mit dir überein. ;)

Gruß,
Marius

Kasenoru

Frischling

Beiträge: 79

Beruf: Softwareentwickler

  • Private Nachricht senden

10

01.04.2009, 23:43

Zitat

Ich finde es ist durchaus notwendig klein anzufangen, aber ich halte es durchaus für sinnvoll ein Framework wie SFML zu benutzen, sobald die Sprache gemeistert ist.


Bei SFML muss ich etwas widersprechen, warum sollte er unnötig Zeit mit SFML + OpenGL vergeuden, wenn es sich für seinen späteren Spielwunsch
sowieso nicht optimal einsetzen lässt.

Zitat

Wenn ich Spiele programmieren will brauch ich nicht die WinAPI oder X11 kennen. Das ist trocken, frustrierend und nicht notwendig, wenn man erstmal ein Framework wie SFML benutzt. Möchte man dann später mal ne eigene Engine oder dergleichen schreiben hat man immer noch genug Gelegenheit sich damit zu beschäftigen.


Da liegst du bei gewöhnlichen Spielen richtig, ich bezog mich hier auf das von ihm gewünschte Spiel-Genre, das 2D RPG.

Zitat

Wie oben schon erwähnt halte ich das für zu viel des Guten. Das wär so als würde man sagen "du darfst erst Firefox benutzen, wenn du ihn selbst programmieren kannst".


Das stimmt so nicht. Auch hier bezog ich mich auf das von ihm gewünschte Spiel-Genre. Wenn er nur einfache Spiele wie Pong oder Tetris entwerfen wollte, dann liegst du hier natürlich richtig.

Da das aber nicht sein Ziel ist, so entnehme ich seinem Beitrag, ist es besser, ein eigenes System zu entwerfen. Um mehr Kontrolle über alle
Vorgänge zu bekommen. Was für gute Grafikeffekte und deren Optimierung zwingend notwendig ist.

Zitat

Du kannst doch nicht ernsthaft einem Anfänger raten Assembler zu lernen. Und das mit der Auflösung ist auch voll der Käse, das kommt immer darauf an was ich will.


Doch, genau das rate ich ihm, zumindest für sein gewünschtes Spiel-Genre. Zum Thema Auflösung, hier liegst du richtig, das es ganz darauf ankommt, was man machen möchte. Und auch hier habe ich mich auf das von ihm gewünschte Spiel-Genre bezogen.

Zitat

SFML kommt mit OpenGL support, es wird nicht nötig sein so tief in die Hardwaretrickkiste zu greifen.


Und was, wenn meine Grafikkarte keine OpenGL Beschleunigung bietet? ;)
Soll ich für bestimmte Grafikeffekte dann auch noch mit Shadern um mich werfen? Und dann später vielleicht sogar noch auf Linux? (Man weiß nie was er später mal vor hat). Tut mir leid aber das ist aus meiner Sicht absolut unnötig und unsinnig. Dann doch lieber Software-Rendering was sogut wie überall läuft.

Zitat


Ich dachte es wär die ultimative, assembleroptimierte Grafikengine.

FMODEX ist eine Engine für die Audioausgabe auf verschiedenen Plattformen. Diese Engine bietet sehr viele Features, die man evtl. aber garnicht benutzt. Womit man unnötiges Balast herumschleppt. Sollte man aber doch viele Audioeffekte benötigen, dann ist FMODEX für Plattformunabhänigkeit sogar sehr gut. Was man aber benötigt und was nicht, sollte man klären bevor man anfängt etwas zu entwickeln. Mit deinem Kommentar dazu kann ich leider nur wenig anfangen.

Mit freundlichen Grüßen

Kasenoru

Werbeanzeige