3D Game Engine Erstellen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Sieber Max Produktion.

    3D Game Engine Erstellen

    Hallo Leute,
    ich Würde Gerne wissen wie ich eine Eigene 3D Game Engine erstelle. Ich habe schon öfters auf Google geguckt und auch sehr viel dazu Gelernt. Was ich aber nicht weis ist, Wie man z.B. in Programm selber Modelliert, Animation Erstellt, Scripts Definiert. u.s.w. Was man zum erstellen eine 3D Spiels braucht. Bisher habe ich mit Blender gearbeitet, was für Anfänger sehr gut Geeignet ist wegen denn Logic Editor. Und so etwas in der Art würde ich für meine Engine auch haben wollen. Bestens über OpenGL laufen. Natürlich sollte Man auch Dinge Ex- und Importieren können (3ds, obj, usw.). Das spiel sollte am Besten auch Erstellt werden können b.z.w. Gedebuggt werden.

    :) :thumbsup:

    Die Farbe Rot gehört der Moderation. Außerdem ist Capslock vollkommen unnötig, da es Schreien impliziert. Du musst auch nichts größer schreiben, da man das auch so lesen kann.
    => Formatierung angepasst. ~Trade

    MfG, Martin

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Trade“ ()

    Hey, zuerst einmal ist die rote Schrift der Moderation vorbehalten- bitte abändern!

    Und ich kann deine Frage zu diesem Thema gut nachvollziehen, es gibt mittlerweile schon zu viele Posts/Threads zu diesem Thema.
    Eine 'Game Engine' ist ein viel zu kleines Wort für dieses sehr komplexe Thema.
    Je nach Spiel würde nämlich diese sogenannte 'Game Engine' entstehen.

    Wieso würdest du denn eine erstellen wollen? Würde das Spiel, welches du machen möchtest, denn eine spezifische benötigen, oder könntest du eine Engine nutzen und diese auf deine Bedürfnisse adaptieren?

    Ich hoffe dir kann jemand aus dem Forum zu diesem Thema einen sehr guten Artikel bzw. sehr gute Empfehlungen geben.

    Gruß,
    Drahuverar
    Option Strict On!
    Ich kann nur auf meinen schlecht dokumentierten, zusammengeklatschten, fehleranfälligen Code verweisen

    Nach dem Grunsätzlichen Architekturvorbild von XNA(ist aber nicht austauschbar - mit Absicht).
    Denn eine Grundsätzliche Architekturvorstellung brauchst du auch, man könnte beim ersten Anlauf inkrementell aufbauen, aber dann solltest du ab irgendeinem Punkt den zweiten Anlauf starten und eine sinnvolle Architektur einbauen.

    Aber bevor du überhaupt an Models denkst, solltest du dich um Rendering allgemein kümmern, dann um alles mögliche 2D zeugs:
    Erstmal VertexBuffer und IndexBuffer hier z.B. der VB
    github.com/OctoAwesome/engenio…/Graphics/VertexBuffer.cs
    Texturen:
    github.com/OctoAwesome/engenio…ous/Graphics/Texture2D.cs
    Dann brauchst du für Sprites nen Batching Vorgang:
    github.com/OctoAwesome/engenio…hics/SpriteBatcher.cs#L10
    Hier sieht man auch, dass man in Sprachen wie C# sich ebenfalls um MemoryManagement gedanken machen muss, sodass der GC nicht zu oft einsetzt
    Dann kann man ans Font-Rendering denken:
    github.com/OctoAwesome/engenio…phics/SpriteBatch.cs#L173
    Font Import bei mir
    github.com/OctoAwesome/engenio…or/SpriteFontProcessor.cs

    Und dann kannst du dir Gedanken um Models/Audio/Video/Texturen etc. machen. Ich hab wie du sehen kannst schon einiges an Arbeit reingesteckt und es fehlt noch so viel/ist zu verbessern und ich hab mir nicht mal vorgenommen Dinge wie Scripting etc einzubauen, denn das ist eine Lebensaufgabe.

    Import von obj, fbx und ähnlichem(Animationen bei FBX funktionieren bei nur sehr wenigen):
    github.com/OctoAwesome/engenio…ocessor/ModelProcessor.cs
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    @Drahuverar

    Drahuverar schrieb:

    Wieso würdest du denn eine erstellen wollen? Würde das Spiel, welches du machen möchtest, denn eine spezifische benötigen, oder könntest du eine Engine nutzen und diese auf deine Bedürfnisse adaptieren?
    Also ich würde eher Sagen das es nach meine Bedürfnisse adaptieren soll. DICE / EA nutzen ja Frostbyte was eine Sehr gute Engine ist, Naja und ich würde gerne für mein "Team" auch eine eigene haben wo wir am besten alles nach unseren Bedürfnissen richten können

    @jvbsl
    Danke erstmal werde ich mir mal genauer anschauen. :thumbsup:
    MfG, Martin