Hallo Leute
Ein Freund erstellt gerne 3D Grafiken mit Swift3D und Cinema4D.
Nun hat er mich gefragt ob ich Fähig bin ein Spiel zu programmieren welches seine Grafiken verwendet.
Ich möchte versuchen mit ihm etwas auf die Beine zu stellen.
Welche Programmiersprache muss ich dazu lernen? (Ich kann schon ein wenig C und AutoIt)
Welche Software sollte er verwenden?
Gruss
Unknown3
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Du benötigst eine Sprache,
- die auf der von dir zu programmierendem Plattform/Betriebssystem läuft
- mit der Du die von Dir gewünschten Ergebnisse programmieren kannst.
Er sollte eine Software verwenden,
- die auf eurer Hardware läuft
- die ihr euch leisten könnt
- mit denen ihr eure gewünschten Ziele erreichen könnt
Wenn ihr eure Ziele etwas detaillierter festgelegt habt, wird man euch bestimmt speziellere Antworten geben können.
Also die Sprache resp. das Spiel sollte auf Windows laufen können.
Die Hardware sollte kein Problem sein, wir haben beide relativ gute PC's.
Das mit dem Geld ist auch kein Problem aber eine biligere Lösung wäre auch nicht schlecht.
Das Ziel ist ein 3D Game erschaffen zu können, welches über eine drehbare Kamera verfügt.
Für den Anfang wäre ein Jump and Run Spiel nicht schlecht.
Im Grunde genommen wäre ich froh wenn ich einfach einige Vorschläge bekomme, welche Software & Sprache sich gut eignet.
Eins vorweg: Ich gebe offen zu, daß meine aktuellen Programmierkenntnisse sich auf Excel-Makros und Videorecorder beschränken. Bin also kein Fachmann was Programmieren angeht.
Aber weisst Du eigentlich, was ihr euch da vornehmt? Natürlich darf jeder in seiner Freizeit machen, was er will. Aber wenn du sagst, du "kannst schon ein wenig C" und dein Kollege "erstellt gerne 3d Grafiken" und "für den Anfang (!) wäre ein Jump and Run Spiel nicht schlecht" scheinst Du auch nicht gerade ein Fachmann zu sein. Für den Anfang würde ich dir empfehlen in einschlägigen Programmier-foren (nichts für ungut, liebe Nickelianer) mal umzuhören, was denn so Sache ist. Ein Spiel, ein 3D-Spiel zu schreiben, so aus dem nichts anzufangen, stell ich mir schon aufwendiger vor als mal eben ein paar Nachmittage lustig vorm Rechner zu sitzen und ein paar Codezeilen zu tippen.
Welche "Sprache" am besten geeignet ist, ein Spiel zu programmieren, diese Frage möchte bitte einer beantworten, der schonmal eins gemacht hat, ich kann dies nicht. Selbst wenn du eine Sprache beherrschen gelernt hast musst du auch du die Technik lernen, die Bits ordentlich auf den Bildschirm zu bekommen. Hast du das Verständnis wie man in 3d Sachen berechnet und räumlich korrekt darstellt? Wie eine Kollisionsabfrage funktioniert? Es ist lobenswert, das du ein solches Projekt in Angriff nehmen möchtest, aber als Hobby, nebenbei, wo man nicht weiss was dabei überhaupt heraus kommen mag wäre mir die Zeit zu schade...
Ich könnte aber den Hinweis geben mal damit anzufangen ein vorhandenes Spiel zu modden, also eigene Grafiken einzufügen, eigene Maps erstellen, Spielabläufe zu verändern etc. So erreicht man schneller sichtbare Ergebnise und sammelt Erfahrungen, wie ein Spiel funktioniert, also das Programm, nicht das Gameplay. Zu dem Thema gibts auch genug spezialisierte Foren.
Oder nimm dir eine vorhandene Engine, ich glaube ältere Quake-engines sind inzwischen quelloffen.
Nichts für ungut...
Erstmal Danke für die Zeit, welche du für diesen langen Text investiert hast.
Mir ist klar, dass es ein weiter Weg ist um etwas richtiges auf die Beine zu stellen.
Ich habe mit ihm zusammen oft irgendwelche Mods u.s.w. erstellt (LF2,AoE,DN)
Ehrlich gesagt erwarte ich nicht, es in ein Paar Nachmittagen zu programmieren.
Ich möchte zuerst wissen, mit welcher Sprache ich mich auseinandersetzen muss um die Grunkenntnisse zu erlangen.
Jeder fängt Klein an, das ist mir klar.
Die Zeit ist auf jeden Fall sinnvoller investiert als wenn ich selbst spiele.
Kann es sein, dass man gleich als DAU angeschaut wird, wenn man nicht dauernd Fachworte benutzt?
Ich weiss sehr wohl wie viel es braucht ein solches Projekt fertig zu stellen.
Der Weg ist das Ziel
Amen
Das sollte auch kein persönlicher Angriff sein. Hast du es so verstanden: Entschuldige.
Mir kam es halt in der Tat so vor als wüsstest du nicht, worum es genau geht.
Gegeben war:
- Du und dein Freund = 2 Personen wollen ein Spiel machen
- Es soll ein 3d Jump&Run werden
- Du stellst die Frage,welche Sprache du am besten dazu verwendest.
Ich habe mir dabei gedacht, entweder
- du denkst, du bekommst eine Sprache genannt, lernst die, und hast dann alles um ein 3d Spiel zu erstellen, und wirst dich wundern, wenn es nicht so ist.
- oder du lernst die Sprache, lernst 3d-Grafik-Ausgabe, lernst Soundausgabe, lernst KI, lernst alles bis du alles weisst um das Spiel zu schreiben, bist dann aber 20 Jahre älter und fängst von vorne an zu lernen, weil es kein Windows mehr gibt
- oder du stellst das Spiel fertig, bist natürlich stolz auf deine Arbeit, aber das Spiel ist so einfach/langweilig/uninterressant, das es keiner haben will wenn du nen Zehner dabeigibst.
Das ich manchmal sarkastisch werde oder böse Wörter benutze liegt an mir, so bin ich eben...
Habe ich zuviel Fachwörter benutzt? Ich sehe jetzt nichts außergewöhnliches... Codezeilen, Maps, Gameplay, Engine sollte in diesem Forum doch geläufig sein?
Ich gönne dir gerne dein Projekt, wollte halt darauf hinweisen, das es ein bisschen länger dauern könnte. Und wenn es doch schon fertige Engines gibt, bräuchte man halt die nur zu nehmen und könnte sich mehr ums Gameplay / Grafik / Sound / KI kümmern. Man bräuchte wie im Sprichwort "das Rad nicht neu erfinden".
Gruß
;-)
fgh443 hat eigentlich schon alles gesagt : )
Für die Realisierung eines 3D-Games, braucht man enorme Programmierkenntnisse, wie auch mathematische Kenntnisse > Lineare Algebra (Matrizen, Vektoren, Ebenen u.s.w)
Als Standart für solche Aufgaben gilt nach wie vor die Programmiersprache C++.
Da das Spiel eben NICHT nur unter Windows laufen sollte, sondern auch unter Linux... sollte man sich ebenso mit OpenGL auf QT4 beschäftigen. (Die kommende OGL3-Version klingt vielversprechend).
C4D-Modele kann man nur schwer bis gar nicht verwenden.. sprich nen Importer dafür schreiben. Dafür verwendet man 3ds Max.
ah.. schaue dir hier einfach ein Paar Beispiele an, was man alles braucht nur um ein blankes Fenster zu erstellen : )
http://www.robsite.de/tutorials.php?tut=opengl
Ansonsten wie schon erwähnt, wäre das modden eine gute Alternative: Valve Hammer Editor ist einfach super!
Gruß
http://artikel.4.am/archives/758-Eigene-Spiele-programmieren.html
http://www.pcfreunde.de/news/detail-1272/microsoft-erklaert-spiele-programmieren-lernen.html
http://www.dooyoo.de/internet-seiten/gamedev-net/668474/
http://www.google.de/search?hl=de&client=firefox-a&rls=org.mozilla:en-US:official&hs=4VC&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=spiele+programmieren+wie&spell=1
Vielen Dank.
Das sieht schonmal sehr hilfreich aus.
Ich hatte jedoch mehr auf persönliche Meinungen gehofft.
Mit Google findet man auch veraltete oder schlechte Produkte anpreisende Artikel...
Danke trotzdem!
Die Hobby-Freizeit-Spieleprogrammierer sind halt nicht sehr breit gesät, da werden doch eher Tools fürs System oder kleine Anwendungen programmiert.
Richtig "groß" 3D Spiele bleiben wohl eher professionellen Herstellen vorbehalten, wo schon mal zig Programmierer daran rumtüffteln und jeder nur ein kleines Teilgebiet beackert
Versuch es damit: http://www.blitzbasic.de/
Hallo!
Ich empfehle wieder mal Python.
Diese Sprache ist ja für alles zu gebrauchen.
Wenn man es richtig anstellt sogar Plattformunabhänig.
http://www.pygame.org/tags/3d
Hier findet man etwas 3D und vieles andere.
Ich würde mich nicht mehr mit Basic befassen.
Gruss
ChrE
Ich muss sagen, Python gefällt mir vom syntax usw.. sehr!
Deshalb werde ich mich damit noch mehr auseinandersetzen.
Bin gerade dabei, das Openbook dazu zu lesen.
Vielen Dank euch allen.
Können tut man das mit vielen Sprachen und Tools, es kommt darauf an was man kann oder will.
Wenn man es professionell angehen will kommt man kaum um eine entsprechende Engine herum (Crytek, Unreal Engine etc). Will man plattformunabhängig sein und ist 3D-Leistung sekundär kann man es mit Java und OpenGL versuchen. Will man es von der Pike auf lernen dann kann man es einfach mit C++ von klein an programmieren.
Eine weitere Möglichkeit ist z.B. Poser welches mittlerweile auch für Spieledesign geeignet ist (jedoch nicht auf Crysis-Niveau).