Unreal Engine erweitern?

  • Hey,
    ich habe vor ein paar Tagen die Snowdrop Engine gesehen (leider nicht verfügbar) mit der das Spiel The Devision gemacht wird. Ich persönlich bin sehr von dieser Engine begeistert, nun hab ich daran gedacht eine eigene Engine mit Features zu machen die ich sooooo gerne hätte :D Aber das ist glaube ich unmöglich...naja meine Idee war es die Unreal Engine zu erweitern, aber ist das überhaupt möglich ohne den kompletten Aufbau der Engine zu bearbeiten? ?(

  • Eine eigene Game-Engine zu entwickeln ist einfacher als man denkt.
    Eine beliebige Programmieroberfläche, eines der dicken OpenGL Bücher aufschlagen und es kann losgehen.


    Das hat nur einen Hacken.
    Ein Spiele-Engine zu entwickeln ist nicht einmal sehr komplex. Vorausgesetzt, höhere Mathematik ist kein Fremdwort.
    Viel eher ist die Zeit das Problem um eine vielseitige Engine zu entwickeln.


    Wenn man es aber durchzieht wird man mit einer äußerst Individuellen, sehr performanten Engine belohnt die wie
    ein Maßanzug an die zu entwickelnden Spiele passt.


    Wer eine eigene Engine entwickelt sollte daher weniger im Sinn haben ein komplettes Spiel zu entwickeln sondern eher eine
    eigene Engine zu entwickeln, um sich Erfahrung und Erkenntnis anzueignen.

  • Ich dachte immer sowas wäre extrem kompliziert. Also ich bin sehr ziemlich erfahren in C++ und Zeiger sind z.b für mich überhaupt kein Problem...kann ich mittlerweile alles mit zuen Augen! Nur alleine sowas zumachen, dauert halt denke ich echt extrem lange und lohnt sich wahrscheinlich nicht. Trotzdem hast du meine interessant daran umso mehr geweckt, etwas höhere Mathematik dürfte glaub ich auch kein Problem sein :D Ich frag mich aber wie man die GUI macht und wie genau eine Engine aufgebaut ist? Ich hätte wirklich so viele Ideen die einiges erleichtern würden und Artisten es erlauben würden viel mehr Einfluss auf die Programmierung zunehmen, da meines Erachtens die Artisten viel mehr Gefühl für das haben was geschehen soll.

  • Die Heimatbasis von OpenGL ist: https://www.khronos.org
    Das am besten Ausdrucken oder immer griffbereit halten: https://www.khronos.org/files/…-quick-reference-card.pdf
    Das OpenGL SDK ist ebenfalls dort zu finden.
    Wie sieht ein OpenGL Grundgerüst aus? YouTube oder Google nach: OpenGL Hello World


    Ich frag mich aber wie man die GUI macht und wie genau eine Engine aufgebaut ist?

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.


    Als deutschsprachiges Buch kann ich folgendes empfehlen: 3D-Grafik mit OpenGL, Das umfassende Praxis-Handbuch, mitp Verlag
    ISBN 978-3-8266-5512-8


    Man kann sich natürlich auch für eine andere API (DirectX) entscheiden.

  • Danke für die Links! :)


    Hast du schon Erfahrung mit Engines?
    Ich weis das es OpenGL und DirectX gibt, aber einen großen Unterschied gibt es glaube ich nicht wirklich oder erzielt man mit DirectX Tatsächlich bessere Ergebnisse? Trotzdem finde ich das OpenGL besser dokumentiert ist.
    Trotzdem tendiere ich zu DirectX, da es dafür einen offiziellen support gibt und da es 100%ig Objektorientiert ist.

  • Mein Spiel auf der eigens entwickelten Engines besten darin mit einem Fahrzeug Minecraft Klötze zu bestimmten Formen
    zu schieben wodurch neue Fahrzeuge entstanden die wiederum mehr Funktionen hatten. FPS versteht sich.
    Schon wieder 10 Jahre her. ^^


    Programmierumgebung war Xcode


    Später bin ich auch die Apple eigene "Engine" SceneKit umgestiegen und habe das Spiel portiert und erweitert.
    Sehr ähnlich wie space engineers - nur auf iOS Geräten.


    Nun sitzt ich im warmen Nest von UE4.


    DirectX ist ähnlich - lief aber nicht auf iOS Geräten.
    OpenGL wurde Jahre lang stark vernachlässigt und holte durch die Übermacht Microsofts DirectX stark auf.
    Sollte endlich der Nachfolger Vulkan erscheinen, werde ich ein paar Blicke riskieren und dabei hoffen, nicht einer neuen
    Spielerei zu verfallen :D


    Trotz alle dem muss ich jedoch darauf hinweisen, dass das nichts wirklich produktives in sich hat, wenn man als Einzeller oder
    Mehrzeller damit ein vollwertiges Spiel entwickeln will. Für eine kleine Anwendung sieht es natürlich ganz anders aus.

  • Ich wäre bereit 5 Jahre meines Lebens in diese Engine zu stecken damit ich und auch andere am Ende düse Tools haben die ich meiner Meinung nach sehr nützlich finde, außerdem würde ich viel bessere Terrain Tools hinzufügen, aber wie schon gesagt ich glaub alleine ist sowas unmöglich, dafür sollte man dann doch zumindest zu 2. sein bestenfalls zu 4 oder deutlich mehr Leute, umso mehr umso besser! :D

  • Ich glaube so ähnlich dachten die Entwickler von Substance Designer /Painter von http://www.allegorithmic.com auch, als sie anfingen,
    eine Anwendung zu entwickeln mit der man Objekte direkt bemalen konnte. ^^


    Meiner einer würde sich eher in die "Maker" oder "Hacker" Szene packen. Mir geht es persönlich nicht darum ein fertiges
    Spiel oder Roboter zu entwickeln. Meine freie Zeit verbringe ich gerne damit, scheinbar komplexe Dinge auf das Grundlegende herunter zu brechen. Die Grundstruktur zu verstehen und etwas eigenes daraus zu entwickeln und zu erweitern.


    Triviales Beispiel: Wie funktioniert ein mechanischer Wecker?
    Wo ist mein Schraubenziehen? :thumbup:


    Zumindest gehen bei diesem Beispiel keine Lebensjahre drauf. :D

  • Ich selbst bin eher im Bereich Art unterwegs obwohl ich auch viel programmiere...mir geht es vor allem darum eine Engine zu machen mit der man Arbeiten wie mit keiner anderen, man soll extrem effizient arbeiten können und viele Dinge sollten extra intigriert sein oder per Plugin hinzugefügt werden können...außerdem würde ich versuchen das Skripten extrem leicht zu halten und eine gute Dokumentation machen. :D

  • So, sorry wenn ich mal dazwischenhaue ;)


    Von der Entwicklung einer eigenen Egnine würde ich dir wirklich abraten, ich hab selbst lange Zeit das Ziel verfolgt und kann dir sagen es ist zwar einfach und mit entsprechenden Kenntnissen innerhalb weniger Stunden ein 3D-Objekt auf dem Bildschirm darzustellen, allerdings gehört viel mehr dazu. Ich hab irgendwann schmerzhaft eingesehen dass es für eine einzelne Person zu komplex ist ;)
    Mittlerweile arbeite ich nur noch selten dran, und dann rein aus Interesse mit dem Wissen dass es niemals Produktionsreife erreichen wird.


    Wenn du allerdings es dennon versuchen willst kannst du gerne nachfragen ;)


    Auch kannst du dir gerne mal meinen Code anschauen :)


    Fazit: Um mal ein bisschen zu experimentieren oder tieferes Verständnis für die Thematik zu erhalten ist die Entwicklung einer eigenen kleinen Engine möglich. Willst du aber ein Spielerstellen solltest du auf eine bestehende zurückgreifen.


    mfg Mirac

  • Hey, wäre sehr nett wenn du mir deinen coden zur Verfügung geben würdest als kleine Referenz. Ich weis das es extrem schwer sein kann und viel dazu gehört, aber ehrlich gesagt will ich es einfach mal versuchen und dadurch auch meine C++ Kenntnisse vertiefen, hab jetzt auch den Sourcecode von der UE4 als Referenz :)