Welche Programmiersprache

Mggrossi

Newbie
Registriert
Sep. 2006
Beiträge
5
Hallo, ich habe vor einiger zeit Programmieren in Basic gelernt. Ich möchte nun ein Kleines Spiel Programmieren. So und nun mal meine Frage welche Programmiersprache sollte ich nehmen. Es gibt ja so viele. In meinem Spiel soll es um folgendes gehen. Ich möchte eine Pferderennautomat aus einem Casino Simulieren. Also muss eich ein paar Grafiken erstellen und die Pferde müssen dann natürlich auch rennen.
Vielleicht könnte ja mal jemand hier die verschiedenen Progammiersprachen aufzählen, und die Vor und Nachteile. Mit welcher Sprache lassen sich am besten Spiele mit 3D Grafik Programmieren. Auch habe ich die Idee für ein Tycoon Spiel. Welche Sprache wäre dfür geeignet? Wo bekomme ich diese? Und womit mache ich die Grafik am besten. Hie mal ein kleiner überblick was ich so alles an Programmiertools zu Hause habe.

3d Games Studio ( noch nicht ausprobiert)
Visual Basic 6.0 (ein bisschen ausprobiert)
Cinema 4D (noch nicht ausprobiert)
Maya 6.5 (n.n.a)
Imageforce 3.40 (n.n.a.)
3dRad 3.0 ( n.n.a)
Diverse Website Programme, Klick&Play, Game Programming starter Kit 4.0, Game Maker 3000.

Natürlich sind mir die letzterenProgramme zu wenig um meine visionen zu verwirklichen. Ich brauche eine anständige Sprache, mit der ich auch anschliessend mein Spiel Verkaufen darf. Wer kann mir da beim Einstieg helfen, oder wer hat sogar lust mit zu helfen. Denn ich hätte zwar keine Probleme das Programieren zu erlernen. Doch Hilfo beim ertellen der grafiken wären nicht schlecht.
Ich weiss eine Menge Fragen. Also um es auf den Punkt zu bringen: Welche Programmiersprache ist für alle Arten von Spiele Programmieren am besten geeignet, und nach Möglichkeit Kostenlos, und wo gibts die Sprache.
Danke Leuts
 
Also,

ich weiß nicht, wie alt du bist, aber das hört sich für mich an, als seihst du noch sehr jung! :-)

Ich habe damals ähnliche Vorstellungen vom Programmieren gehabt -
mit 14 wollte ich ein Spiel programmieren, habe mir dann selber Turbo Pascal beigebracht, habe dann Hintergrundmusik und ein paar Bildschirme mit Schriftzügen zur Einleitung programmiert. Dann habe ich Bilder eingescannt, farbig bemalt, etc., das ganze hat viele viele Wochen oder Monate gekostet. Am Ende hab ich alles durch Festplattencrash verloren und aufgehört.
Heute, 13 Jahre später, mein Informatikstudium ist so gut wie fertig, weiß ich:
Ich hatte damals nur Pillepalle programmiert - die Einleitung etc.
Für die Spiellogik und die Grafik- und in deinem Fall willst du sogar in 3D Programmieren -
brauchst du ne MENGE Fachwissen, und noch mehr Zeit.
Heutige Spiele werden von einem Team von ca. 10-100 Leuten programmiert, mit einer
Dauer von 2-6 Jahren!!! (Wobei jeder dieser Personen Experte auf seinem Gebiet ist!!).
Also am besten, du schraubst deine Erwartungen runter. Wenn du dich anstrengst, und ne Menge mit Programmieren beschäftigst, schaffst du in 3-4 Monaten ein Spiel zu programmieren, wie "Space Invaders" - also ein Uralt Spiel, wie es 1980 auf den Markt kam.
Aber, wie auch immer, zu deiner eigentlichen Frage:
3D Sachen müssen schnell laufen, daher programmiert man meist mit C++, wobei die Geschwindigkeitssensiblen Bereiche mit C / Assembler geschrieben und eingebunden werden. C und Assembler sind Hardware- bzw. Hardware nahe Sprachen - dadurch sehr sehr schnell, aber auch sehr sehr schwierig, komplexe Abläufe zu programmieren - daher verwendet man sie nur für ca. 1% des Codes, der aber schnell laufen muss.
Ich aber würde dir was anderes empfehlen, wenn du nicht ganz schnell die Lust verlieren willst. Fang mit was einfachem an. Handyspiele Programmierung z.B.
Für ein Handy kann man heute noch recht einfache Spielchen programmieren, die auf dem PC längst keiner mehr sehen will - also wieder in Richtung Space Invaders.
Hier fälllt mir z.B. Java J2ME ein. Das tolle dabei ist auch, dass die Sprache bereits viele Features der Spiele Programmierung direkt , und du nicht bei 0 anfangen musst.
Aber, selbst so ein kleines Handy Spiel ist verdammt schwer zu bewerkstelligen -
Nach ca. 4 Jahren Informatik Studium habe ich zu zweit 3 Monate programmiert, um am Ende ein Spielchen geschaffen zu haben, wo man mit einem Manderle hoch und runter laufen kann und Fragen beantworten kann - kein Kämpfen, kein garnix besonderes.
Und trotzdem sind wir verdammt stolz, auf das, was wir da geschafft haben!
Du könntest auch mit C# anfangen, das bietet auch einige "Komfortsachen" wie Java,
und du kannst die super Programmierumgebung "Visual Studio" nutzen, die dir einiges an Arbeit erleichtert. Blöd an C# ist nur, dass jeder, der dein Programm / Spiel später nutzen will, die MS .Net Umgebung auf seinem PC installiert haben muss ( Was aber wohl langsam zum Standard wird).

Zusammenfassung:
C++ / C / Assembler, wenn du es trotz meiner Warnung mit 3D Spielen versuchen willst.
Java J2ME für kleine Handy Spielchen
C#, das ist ähnlich wie Java, aber weil es von MS ist, gibts da eine gute Entwicklungsumgebung "Visual Studio".

Noch besser: Du vergisst dein Vorhaben und machst was anständiges, z.B. mal wieder was mit Freunden unternehmen!!!! :freak:
 
lol Dooing.... echt amüsant und ansprechend beschrieben :-)

Hat Spaß gemacht deinen Text zu lesen. Hoffentlich ist der Kollege geheilt :-)


Gruß
 
Kaufst du auch Autos bevor du überhaupt einen Führerschein hast?!

Du besitzt Software im Wert von mehreren Tausend Euro und weißt noch nicht mal wofür die gut sind, geschweige denn, dass du überhaupt damit umgehen kannst.

Verkauf doch die Software ... dann kannste 2-3 Monate jemanden einstellen, der dir ein kleines Spielchen programmiert. :freak:
 
Also ich finde der Kollege Informatikstudent hat total übertrieben. Ich selber studiere jetzt seit zwei Semestern Informatik, und mit ein bisschen Leidenschaft und etwas Freizeit ist es kein Problem gewesen, zu Zweit nen anständigen 2d Shooter (Crimsonland-Klon) zu schreiben (so nebenbei neben dem Studium). 3D Grafik wäre natürlich komplexer, aber das will er ja garnicht.

So wie ich das sehe will er folgendes:

Es gibt ein paar Pferdegrafiken die meinetwegen links starten und zufällig (?) nach rechts laufen. Wenn man auf das richtige Pferd gesetzt hat, gewinnt man Geld, sonst verliert man. Die Spiellogik code ich dir in max. 30 min runter. Grafiken malen/scannen/rendern/was auch immer kann natürlich beliebig viel Zeit schlucken.. wenn man es mit Textausgabe macht ist man insgesamt nach ner Stunde fertig. Wenn man seine Sprache schon beherrscht.

Aber Tip an den Threadersteller: Hör auf uns Informatikstudenten und beschäftige dich mit was anderem. Mädchen oder so. Glaub mir, später bereust du es, in deiner Jugend programmiert zu haben ;)
 
Wenn jemand mit Programmieren anfangen will: C++
Genügend Tutorials findet man im Netz.
 
Naja so Pauschal kann man das nicht sagen das C++ die sprache ist die alle können müsste. Ich kann zwar kein C++ aber ich weiss das es z.B. nicht Typesaved ist.
Das kann schnell in großen Projekten zu fehlern führen.

Ich selbst finde C# sehr gut da es sehr leicht ist zu lernen nur es hat den nachteil das es fast ausschließlich unter Windows Funktioniert.
 
Ich sage dir: Hör nicht auf die bösen Informatikstudenten ;)
Ich programmiere seitdem ich 15 bin kann mehr oder weniger fließend C++ und anderes und habe auch ne Freundin und bin jedes Wochenende weg... Lass dich nicht entmutigen.
Was du dann leider Opfern musst ist deinen Schlaf *g* Daraus wird als hobby Programmierer nichts mehr ;)
 
Meiner Meinung nach ist C++ schwieriger zu erlernen als zum Beispiel C# obwohl sich in C# einige Aspekte von C++ wiederfinden!!

Also ich habe mit C++ und DirectX angefangen und es war schon ziemlich schwierig zu verstehen vorallem da ich noch 15 Jahre alt gewesen bin!! Bin dann auf C# umgestiegen und es fällt einem wirklich leichter zum Beispiel DirectX zu erlenen als es bei C++ war. Wenn du wirklich in Bereich Enigines und 3D Programming einsteigen willst rate ich dir dass du zuerst einige Programmiersprachen einigermaßen erlernst. Java und C# sind ein guter Einstieg!! Du musst ja nicht alles im Detail verstehen aber solltes einigen Beispielcodes folgen können.

Wenn du dann weiter auf dem Gebiet der Mathematik vorgestoßen bist und eine Programmiersprache einigermaßen beherrscht dann kannst du dich an DirectX wagen. Es ist eine ziemlich komplizierte API und man braucht jede menge Erfahrung um damit gute Games zu schreiben!!
Von heute auf Morgen lernt keiner Programmieren vorallem wen es um so etwas komplexes wie 3D Programmierung geht. Du musst klein Anfangen und deine Erwartungen nicht zu hoch schrauben. Ein Beispiel: Man braucht einige tausend Zeilen Code um z.B HDRR (High Dynamic Rage Rendering) zu implementieren und bis man das geschafft hat vergehen schon einige Monate.

Aber jeder fängt mal klein an!! Viel Spaß :p
 
Naja nicht entmutigen? Ich denke er wird sich selbst entmutigen, denn wenn er bislang gar keine Ahnung vom Programmieren hat, dann wird es ein sehr schwerer Weg, sein Projekt zu vollenden...
 
Viel wichtiger als eine konkrete Programmiersprache zu lernen ist es, wichtige Konzepte, die dahinterstehen zu verinnerlichen (OO, Generics/Templates, diverse Patterns usw.). Programmieren damit anzufangen, Tutorials zu dieser Sprache durchzuarbeiten, in denen kleine Konsolenprogramme geschreiben werden, die Hello World ausgeben, ist IMHO Schwachsinn.
Wenn man also noch nicht programmieren kann, würde ich eher damit anfangen ein Buch über die Programmierung im Allgemeinen durchzugehen und als Sprache zur Umsetzung des gelernten, eine nehmen, die sowohl funktionales als auch objektorientieres Programmieren erlaubt. Eine sehr einfache Sprache, die sich hervoragend für Anfänger eignet ist Python. Sie hat nur sehr wenig basic Syntax und vieles geschieht über Listen (ähnlich wie in LISP). Sie hat außerdem den Vorteil, dass man gleich an guten "Schreibstil" gewöhnt wird, da man richtig einrücken muss.
http://de.wikipedia.org/wiki/Prozedurale_Programmierung
 
Also da du sagst du kannst etwas Basic würde ich dir für dein Kleines Project Blitz Basic empfehlen damit kann man zwar keine Anwendungen coden allerdings sind kleinere Spiele damit kein Problem.

Infos:
www.blitzbasic.com
www.blitzforum.de

Neben der offiziellen Blitz3d IDE gibt es auch ein paar Freeware IDEs.
 
tewes schrieb:
Naja so Pauschal kann man das nicht sagen das C++ die sprache ist die alle können müsste. Ich kann zwar kein C++ aber ich weiss das es z.B. nicht Typesaved ist.
Das kann schnell in großen Projekten zu fehlern führen.

Ich selbst finde C# sehr gut da es sehr leicht ist zu lernen nur es hat den nachteil das es fast ausschließlich unter Windows Funktioniert.

bitte? c++ nich typesave!? wenn man selbst weiß das man keine ahnung davon hat....

c++ ist nur dann nicht typesave wenn du ausdrücklich auf den type verzichtest(also ausdrücklich einen void pointer verlangst, oder zeug wild durch die gegend castest...).

ansonsten ist c++ das genaue gegenteil: es gibt (dank templates) wohl kaum eine andere sprache die so flexbel ist und trotzdem fast alle features beim compilieren überprüfen kann. andere sprachen schaffen das nur mit laufzeit typeinformationen - das ist langsam und eigentlich zu späht für ordentliche fehlerbehandlung.
 
Geil wie das hier abgeht, und der typ hat noch nicht einmal geantwortet.
Was ich am spielchen zusammentüfteln eher als schwierig empfinde ist ein team von hobbyisten beisamen zu halten. Irgendwie hat nie jemand lust irgendetwas zu machen.

Mit der aufgabe einen "Pferderennautomat aus einem Casino Simulieren" solltest du wohl eher die finger von 3D lassen und einfach nur einpaar starre bildchen von links nach rechts verschieben. Dass lässt sich mit Java, C, Basic, oder sonstigem bewerkstelligen.

Wenn su tatsächlich irgendwas in 3D machen willst kauf dir ein passendes buch dazu, die programme runterzuladen hilft dir nichts. Nicht jeder der Word hat ist Romanauthor...
 
Siberian..Husky schrieb:
bitte? c++ nich typesave!? wenn man selbst weiß das man keine ahnung davon hat....

c++ ist nur dann nicht typesave wenn du ausdrücklich auf den type verzichtest(also ausdrücklich einen void pointer verlangst, oder zeug wild durch die gegend castest...).

ansonsten ist c++ das genaue gegenteil: es gibt (dank templates) wohl kaum eine andere sprache die so flexbel ist und trotzdem fast alle features beim compilieren überprüfen kann. andere sprachen schaffen das nur mit laufzeit typeinformationen - das ist langsam und eigentlich zu späht für ordentliche fehlerbehandlung.

Und da er C++ nicht kennt wird er 100%ig es vom Pointer verlangen. Und der Comipler wird es so hingenommen.
In C# wird er hingewiesen, und es trotzdem möglich, zwar über umwege, decimal in float zu konvertieren etc.
 
tewes schrieb:
Und da er C++ nicht kennt wird er 100%ig es vom Pointer verlangen. Und der Comipler wird es so hingenommen.
In C# wird er hingewiesen, und es trotzdem möglich, zwar über umwege, decimal in float zu konvertieren etc.
??? Also, Compiler verstehe ich ja noch, aber den Rest...
 
Ich wollte damit sagen das ein unerfahrener Programmierer in C++ höchstwarscheinlich den Pointer dazu veranlässt z.B. einen String in einen Integer zu konvertieren, obwohl im String auch "XYZ" stehen kann.
In C# wird der Programmierer den Code nicht compilieren können, und muss auf Methoden zurückgreifen die Exceptions auswerfen oder sich schnell selbst etwas Programmieren.
 

Ähnliche Themen

Zurück
Oben