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

13.05.2015, 20:11

Start in die 3D Welt [OpenGL]

Hallöle

WIe die überschrift schon sagt möchte ich mich langsam mal an 3D-Spiele rantrauen. Nach einigen recherchen war es mir eigentlich klar das ich OpenGL nutzen möchte. Der Hauptgrund ist eigentlich der, dass es Crossplatform ist. Auch wenn ich zugegeben am anfang nur Spiele für Windows machen werde, finde ich diesen Grund jedoch enorm wichtig da ich selber Linux nutze und die mentalität hinter Non-profit, open-source usw loblich finde.
Ich komme nur gelegentlich über Multiboot rüber auf Windows um zu Programmieren da ich Visual Studio echt Sexy finde und bis dato noch keinen ernst zu nehmenden ersatz unter Linux gefunden habe. Vielleicht habt ihr ja einen Tipp ;)

Zu meiner eigentlichen Frage. ich habe gelesen, dass in geraumer Zeit "Vulkan" erscheinen wird und dies als "Next OpenGL" gehandhabt wird. Sollte ich nun etwas warten und mit Vulkan anfangen, oder doch lieber "erstmal" mit OpenGL beginnen. Kann man die APIs überhaupt so vergleichen?

Liebe grüße Urprimat
Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.

Linus Torvalds

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Urprimat« (13.05.2015, 20:22)


Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

2

13.05.2015, 21:03

Zum Thema Vulkan bin ich überfragt da ich mich damit noch nicht wirklich stark auseinander gesetzt habe. Aber was du machen könntest wäre dich erst mal mit einer Engine auseinander zu setzen die dir ein wenig Arbeit abnimmt. So kannst du dich mit dem ganzen erst mal in Ruhe vertraut machen. Dann wird es dir vermutlich auch einfacher fallen direkt mit OpenGL zu arbeiten. Mit C++ könntest du zum Beispiel mal Ogre3D testen. Das fand ich recht gut zu verstehen. Auch wenn es mittlerweile sicher nicht mehr ganz up to date ist.
„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.“

3

13.05.2015, 21:17

glNext bzw Vulkan ist sicher interessant, ein Blick ist es wert. Ich denke aber dass es noch ein bisschen dauern wird, bis es entsprechende Dokus und Tutorials gibt, und entsprechend aktuelle hardware, die das ganze unterstützt, braucht man auch.
OpenGL ist 'immer noch' weit verbreitet und der Standard wenn es um Portable Grafik geht.
Vulkan und OpenGL kann man sicher irgendwie vergleichen, Vulkan soll wohl sehr auf Performance setzen und im allgemeinen 'besser' als OpenGL sein.

4

13.05.2015, 21:39

Vielen dank für die antworten.
Ich werde mir mal Ogre3D anschauen. Obwohl ich ehrlich gesagt nicht der Fan von "vorgekauter" Arbeit bin. Ich fang gerne bei Null an auch wenn das bedeutet das ich erst nach Tagen mein erstes Dreicheck zu Gesicht bekomme. Oder meint ihr ich werde echt kein Spaß daran haben und sollte lieber am anfang auf eine Render Engine, sei es jt Ogre3D oder was weiß ich, setzen die OpenGL benutz um "warm" zu werden.
An meiner motivation und vorallem ausdauer wird es nicht scheitern

@Roflo Ein sehr guter Punkt an den ich noch garnicht gefacht habe. Ich kann mir auch gut vorstellen das es wenig Dokus und Tuts geben wird. Somit wäre der einzige logische Weg der über OpenGL.

Edit: oder was haltet ihr von der Idee OpenGL zu benutzen, aber 2D Spiele damit zu machen. Da ich schon ein wening erfahrung in diesem bereich mitbringe, könnte ich es nutzen um einen Einblick in die API zu bekommen?
Sinnvoll oder Zeitverschwendung?
Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.

Linus Torvalds

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Urprimat« (13.05.2015, 21:53)


NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

5

13.05.2015, 21:53

Ich sehe keinen Vorteil darin komplett neu anzufangen. Ich würde dir Unreal oder Unity empfehlen. Wenn du dich mit der Mathematik vertraut gemacht hast kannst du ja mit OpenGL Anfangen.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Julién

Alter Hase

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

6

13.05.2015, 23:55

Generell hat NachoMan eigentlich recht.

Aber es kommt drauf an, was du möchtest.
Möchtest du verstehen was hinter den Kullissen abläuft? Dann mach etwas mit einer Low Level API with OpenGL / Vulkan oder DirectX.
Aber wenn du möglichst schnell etwas auf die Beine bringen möchtest, das gut aussehen soll, dann würde ich dir zu einer Engine empfehlen.

Mir haben Unity, CryEngine und die BGE in der Vergangenheit ziemlich gefallen.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Julién

Alter Hase

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

7

13.05.2015, 23:58

Komplett falsch würde ich nicht sagen, LetsGo. Auch wenn deine Aussage richtig ist.

Wenn man mit OpenGL / DirectX entwickelt, dann entwickelt man gewissermaßen auch eine Engine mit.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Julién« (14.05.2015, 00:13)


8

14.05.2015, 00:25

Hmm primär möchte ich natürlich ein Spiel entwickeln. Jeoch auch wissn welche Prozesse intern ablaufen. Ich denke jedoch ich werde mit einer Game oder Rendering engine anfangen und vllt irgendwann mal Tiefer hinein schauen. Kann man Gameengines in DirectX oder OpenGL aufteilen? das ich mir zb eine ausuchen die OpenGL benutzt? jetzt rein wegen der Protabilität.

Edit: @bambi ich hatte wohl deinen Beitrag übersehen -.- Danke du hat mir damit den letzen Motivations kick gegeben. Ich werde mir also mal OpenGL etwas näher angucken habe auch schon ein Paar interessante und voralem aktuelle Tutorials gefunden. Vllt werde ich Parallel dazu mir wirklich einen engine schnappen um einfach auch wirklich was zu zockbares zu schaffen. Danke dir :thumbsup:


Gruß Urprimat.
Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.

Linus Torvalds

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Urprimat« (14.05.2015, 00:40)


NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

9

14.05.2015, 00:36

DirectX ist eher was für AAA-Entwickler.

Wieso? Was kann man mit OpenGL nicht machen was man mit DirectX kann?
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

KeksX

Community-Fossil

Beiträge: 2 107

Beruf: Game Designer

  • Private Nachricht senden

10

14.05.2015, 05:24

Es gibt einen großen Nachteil am Arbeiten mit DirectX und OpenGL, zumindest wenn es dein Ziel ist, Spiele zu entwickeln: Es ist so verdammt verlockend, sich monatelang mit allem zu beschäftigen - außer mit dem tatsächlichen Entwickeln von Spielen. Das ist jetzt auch keine Übertreibung sondern eher noch eine Untertreibung. Du kannst dich mit den Dingern ewig beschäftigen ohne auch nur ein Spiel rauszukriegen.

Beides sind Werkzeuge, Spiele zu entwickeln. Genau so wie ein Hammer ein Werkzeug ist, ein Haus zu bauen. Aber du kannst mit einem Hammer alleine keines bauen, und auch bloß DirectX zu kennen wird dir nicht ermöglichen sofort ein Spiel aus dem Nichts zu erschaffen.

Frag dich also, was dein kurzfristiges/langfristiges Ziel ist. Es ist auch noch niemand gestorben, der erst mit der SFML entwickelt hat und dann erst tiefer gegangen ist. Oder quasi von Game Maker/RPG Maker tiefer gegangen. Ist alles drin. DU musst wissen, was dir wichtig ist.
WIP Website: kevinheese.de

Werbeanzeige