Du bist nicht angemeldet.

Werbeanzeige

1

06.02.2015, 11:53

Womit anfangen bei der Spieleprogrammierung?

Hallo,


Mein Name ist Chris.
Ich interessiere mich schon seit geraumer Zeit für die Programmierung / Spiele Programmierung [Ich definiere mal geraumer Zeit auf, seit dem ich den ersten Ratterkasten(PC) in die Hand bekommen habe, dort auf den Startknopf gedrückt habe und Win98 den Bildschirm erleuchtet hatte :D ]


Ich habe auch schon Erfahrung in HTML,CSS und PHP dazu halt alles son bisschen was noch so mit der Webentwicklung zu tun hat.


Ich habe mir das Spiele Programmieren ja schon öfter mal angeschaut. Bin dabei auch über C++ gestolpert, hatte dann aber immer mit den Ansatz drin, dass man DirectX oder OpenGL braucht.
Da ich mich damit aber auch noch fast gar nicht beschäftigt habe, und auch ehrlich gesagt nicht wirklich was gefunden habe, bin ich jedes mal an diesem Punkt hängen geblieben.


Das Logische und verständliche auch Elektronische/Maschinelle denken fällt mir nicht schwer, also ich meine mit Elektronische und Maschinelle denken, das denken eines Computers. Also die Strichlisten Arbeitsweise.


Jetzt bleibt natürlich noch die Frage für mich offen, womit sollte man anfangen?
Mir ist klar, das ich jetzt kein kleines Bf5 auf die Beine stelle :thumbsup: , aber ich würde es schon feiern, wenn mir jemand die grundlegenden Sachen nah bringen könnte...


Danke an jede Antwort,
Mfg. Chris

2

06.02.2015, 12:28

Hallo Chris,
Willkommen im Forum! ;)

Da du bereits Erfahrung in der Web-Programmierung hast,
wäre vielleicht WebGL (s. three.js) ein Ansatz für dich,
um grundlegende Konzepte (Mathe, Beleuchtung, Material, Texturen usw.) der 3D-Spieleprogrammierung zu erlernen.

Wenn es 2D werden soll, gibt es ähnliche Frameworks wie Canvas-Renderer usw..
fka tm

3

06.02.2015, 12:39

Danke für die Antwort, aber da das ALLES auf Englisch ist denke ich mal nicht ^^... Spaß bei Seite.

Sieht auch sehr interessant aus. Ich werde es mal ausprobieren.

Schorsch

Supermoderator

Beiträge: 5 157

Wohnort: Wickede

Beruf: Student

  • Private Nachricht senden

4

06.02.2015, 19:06

Ansonsten musst du auch nicht direkt mit DirectX oder OpenGL arbeiten. Es gibt schon fertige Frameworks oder Engines die dir eine Menge an Arbeit abnehmen.
TrikkieMikkie hat schon einen super Vorschlag gemacht. Du kannst auch mal allgemein nach "javascript game engine" oder "html5 game engine" suchen. Da müsste sich einiges finden lassen.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

5

08.02.2015, 20:40

Wenn man mit dem Ziel Spieleentwicklung an C++ geht kann man gerne mal hinfallen. Vorallem wenn man vorher PHP und ähnliches gemacht hat welche einem nach meiner Erfahrung ein sehr gutes Gefühl zurück geben. Wenn du Spieleentwicklung mit C++ anfängst musst du ja wirklich viel machen bevor du überhaupt zur ersten Grafik kommst ( Wer hat sich schon nicht gefreut als das erste Dreieck auf dem Bildschirm erschienen ist? :D ).

Ich empfehle aber trotzdem so etwas selber mit zb. openGL zu machen. Dann kannst du einfach sagen dass das Spiel ganz allein von dir gemacht wurde :D und du lernst viel über die Spieleentwicklung dazu und siehst spiele mit ganz anderen Augen.

Wenn du mit C++ anfangen solltest empfehle ich dir das hier: http://www.joachimrohde.com/cms/xoops/mo…ex.php?cat_id=1
solltest du damit durch sein dann meld dich einfach nochmal :D

6

08.02.2015, 20:53

Okey, ich werde mir auch dies mal genauer anschauen ;) .

Aber man kann doch ein spiel nicht pur mit OpenGL oda so programmieren oder ?
Und was müsste ich den bitte noch angeben wenn ich mit C++ Programmiere?
Ich meine alle großen Titel, wurden doch mit C++ geschrieben ( Oder? )
Und ich denke mal mit C++ hat man auch die größte Möglichkeit, was man alles schreiben kann.

birdfreeyahoo

Alter Hase

Beiträge: 755

Wohnort: Schorndorf

Beruf: Student der Softwaretechnik

  • Private Nachricht senden

7

08.02.2015, 21:09

Aber man kann doch ein spiel nicht pur mit OpenGL oda so programmieren oder ?


1. Doch, kann man. Ist halt ein Haufen Arbeit wenn man keine Engine verwendet, es geht aber sicher (alles basiert im Prinzip auf einem Low-Level-Renderer wie OpenGL)

Und was müsste ich den bitte noch angeben wenn ich mit C++ Programmiere?


Was meinst du mit "angeben"?

Ich meine alle großen Titel, wurden doch mit C++ geschrieben ( Oder? )


Viele der großen Titel sind mit C++ geschrieben, viele Engines basieren (zumindest) im Kern darauf. Gibt natürlich auch Ausnahmen.

Und ich denke mal mit C++ hat man auch die größte Möglichkeit, was man alles schreiben kann.


Es gibt sehr viele Bibliotheken für C++, aber das Angebot für z.B. C# wächst auch beachtlich.

8

08.02.2015, 21:21

Ich empfehle aber trotzdem so etwas selber mit zb. openGL zu machen. Dann kannst du einfach sagen dass das Spiel ganz allein von dir gemacht wurde
Das ist mit Anegeben gemeint

9

08.02.2015, 21:24

Ok, alles soweit klar, aber ich weiß jetzt immer noch nicht welche Programmiersprache ich mir dann aneignen sollte.
Und wo ist den aktuell der Unterschied zwischen DirectX und OpenGL ?
Ich weiß das DirectX von Microsoft verwaltet wird, da ja bald eine große neue Version kommen soll die Performance stabiler ist.

birdfreeyahoo

Alter Hase

Beiträge: 755

Wohnort: Schorndorf

Beruf: Student der Softwaretechnik

  • Private Nachricht senden

10

08.02.2015, 23:08

Der Unterschied ist folgender:

DirectX ist von Microsoft und läuft nur auf Windows-PCs (normal), und auch XBOX glaube ich.
Es enthält neben 3D-Grafik auch Audio, Input und Media-Bibliotheken.
Die Bibliothek ist natürlich etwas für sich, fast jede moderne Grafikkarte stellt Hardwaresupport für DirectX zur Verfügung

OpenGL ist ein Renderer der auf mehreren Plattformen läuft u.a. wird OpenGL ES z.B. für Mobilgeräte verwendet.
OpenAL, OpenCL etc. sind weitere Bibliotheken, die fast ein gleiches Spektrum wie DirectX bieten.
Die Bibliotheken sind unterschiedlich strukturiert, sowohl von der Konvention und der objektorientierten (oder auch nicht) Struktur.
OpenGL wird auch von modernen Grafikkarten normal immer unterstützt.

Moderne Game-Engines implementieren beide, also bietet ein unabhängiges Interface, sodass man zwischen beiden "umschalten" kann.

Werbeanzeige