Was ist eingenlich eine Engine ?



  • Hi,
    jeder Spricht von einer (3D)Engine.
    Aber was ist das eigenlich.

    Eine Sammlung von Klassen die Ogl o. Directx verwendet.

    Würd mich ueber ein Aufklährung freuen.

    Gruss
    ...uncle



  • die frage wurde mindestens schon 100x gestellt
    BENUTZ DIE SUCHFUNKTION!!! 😡



  • Uncle Sam schrieb:

    Eine Sammlung von Klassen die Ogl o. Directx verwendet.

    ...hast es Dir doch schon selber beantwortet... 🙄

    Würd mich ueber ein Aufklährung freuen.

    Okay, klär' ich Dich mal auf: Dieser Satz ist sowas von orthographisch inkorrekt... 😞



  • Sgt. Nukem schrieb:

    Uncle Sam schrieb:

    Eine Sammlung von Klassen die Ogl o. Directx verwendet.

    ...hast es Dir doch schon selber beantwortet... 🙄

    Allerdings falsch.



  • Eine Engine kapselt Grafikfunktionen einer Api wie OpenGl oder DirectX. der Vorteil ist dass man sie immer wieder verwenden kann und dass man nicht mehr
    direkt mit der Api zu tun hat, da sie ja abgekapselt wurde.



  • ist das dann nicht ein wrapper ?! :)))



  • Ich würde es mit einem Framework gleichsetzen, mit dem Unterschied, das eine Engine halt für Games ist und ein Framework für Applikationen. Aber letztendlich erfüllen sie den gleichen Zweck.



  • Baschar schrieb:

    Eine Engine kapselt Grafikfunktionen einer Api wie OpenGl oder DirectX.

    Bashar schrieb:

    Sgt. Nukem schrieb:

    Uncle Sam schrieb:

    Eine Sammlung von Klassen die Ogl o. Directx verwendet.

    ...hast es Dir doch schon selber beantwortet... 🙄

    Allerdings falsch.

    Stimmt. Deine Aussage is'n Riesen-Unterschied... 🙄
    (Spielst Du darauf an, daß Engines auch prozedural programmiert werden können, oder was?!?)

    Is' aber auch falsch.

    basc schrieb:

    ist das dann nicht ein wrapper ?! :)))

    Eben.

    Die Quake-Engine kapselte weder DirectX noch OpenGL.
    Trotzdem zweifelt wohl niemand daran, daß es sich um eine Engine handelte...



  • Bashar != Baschar

    Is' aber auch falsch.

    das man Engines auch nicht OO programmieren kann oder die Aussage von Baschar?



  • ich würd sagen ne engine ist ein framework, das verschiedene sehr allgemein gehaltene funktionen anbietet. das heisst mann kann damit jede art von 2d/3d darstellung (+ sound, input, etc.) machen. das framework muss dann nur noch instanzieert werden -> also man entwickelt ein konkretes spiel!


  • Mod

    solange man nicht davor schreibt was für ne engine das ist, kann ne engine eigentlich alles sein, nicht?

    ansich müßte man dann sagen, dass ne engine nicht nur ein wrapper ist sondern ne sammlung von funktionen beinhaltet, die immer wiederkehren würden und die man dann fertig vorliegen hat (deswegen ENGINE -> übernimmt arbeit)
    egal ob rendering-, raytracing-, game- ... engine, das macht eigentlich ne engine aus.
    wenn man nur die funktionen umschreibt die andere apis zur verfügen stellen ->wrapper.

    dabei muss man sich immer die frage stellen was darunter liegt, unter der engine.
    hätte man sowas für oGL oder D3D :

    RenderPoly(Ver1,Ver2,Ver3);
    

    wäre das ein wrapper, wenn man sowas aber für gameboy,gamecube,playstation,n-gage,gp32... bietet, dann ist es schon eher eine engine, weil es nicht nur eine funkiton kapselt, sondern z.B. auf dem gameboy diese funktion überhaupt erst implementiert und somit wirklich arbeit abnimmt, die man sonst machen müßte.

    rapso->greets();



  • moin

    Eine Engine ist eine Programm, welches die Funktion hat, bestimme Sachen einzulesen z.B. Texturen, Sounds, oder auch Maus und Tastatur diese dann zu verarbeiten und dann auszugeben. Also ein ganz simples EVA (Eingabe, Verarbeitung, Ausgabe) Prinzip.

    Wenn man nun eine Engine schreiben will muss man sich mit der Verarbeitungseinheit beschäftigen. Im Klartext, was muss eingelesen werden bzw. abgefragen werden. Dann wie muss es verarbeitet werden (Welche Tetxture kommt wohin) und dann noch wie wird es dargestellt.

    Hoffe mal das das halbwegs richtig ist. 😃



  • moin

    Eine Engine ist eine Programm, welches die Funktion hat, bestimme Sachen einzulesen z.B. Texturen, Sounds, oder auch Maus und Tastatur diese dann zu verarbeiten und dann auszugeben. Also ein ganz simples EVA (Eingabe, Verarbeitung, Ausgabe) Prinzip.

    Wenn man nun eine Engine schreiben will muss man sich mit der Verarbeitungseinheit beschäftigen. Im Klartext, was muss eingelesen werden bzw. abgefragen werden. Dann wie muss es verarbeitet werden (Welche Tetxture kommt wohin) und dann noch wie wird es dargestellt.

    Hoffe mal das das halbwegs richtig ist. 😃


  • Mod

    die beschreibung EVA trifft auf jedes programm zu, ohne input gibt es keinen output (selbst wenn der input ein randomiser im code ist) und dass die daten verarbeitet werden.. hmm... also selbst ein wrapper leitet die daten weiter, wäre somit ne engine so wie man es deinem text interpretieren kann, etwas was keine daten verarbeited ist wohl nur ne datensammlung

    natürlich haste irgendwie räscht :D, aber es erklärt nicht wirklich was ne engine ist, weil das auch auf normale programme zutrifft.

    es gibt ja auch andere engines, z.B. die in Grafikbearbeitungsprogrammen, die nur bilder und plugins einlädt und eventuell noch scripte interpretiert...

    engine ist wohl ne sammlung werkzeuge die viel arbeit abnimmt, wenn man sich auf die hauptsache konzentrieren möchte und nicht bis in die "analen" jeder technik gehen möchte um z.B. ein spiel zu programmieren.

    vielleicht heißt es engine, weil es wie beim wagen ist, man weiß wo es ist, wozu es da ist, wie man es verwendet und normalerweise denkt man nichtmal drüber nach was gerade abläuft wenn man ein "pedal drückt", aber man sieht nicht selbst was da abläuft und in welchen feinen zusammenhängen... was man zumeißt auch garnicht möchte. 😃

    rapso->greets();



  • Hi

    ok ok es stimmt schon das es auf alle Programme zutrifft.

    Ich versuche es noch mal. Eine Engine ist der Kern eines Spiele. Es regelt alle Vorgänge die ablaufen sollen bzw. werden. Sie ist das Herzstück eines Spieles. Den sie alleine regelt was geladen werden muss und was nicht.

    Ach sch**ß das ist so schwer zu erklären. Eigendlich mach sie alles.

    so ich sage jetzt garnichts mehr. Muss arbeiten heheh 😃



  • kingruedi schrieb:

    Bashar != Baschar

    Is' aber auch falsch.

    das man Engines auch nicht OO programmieren kann oder die Aussage von Baschar?

    Die Aussage von Baschar.
    Auch wenn es nicht derselbe ist. Man sieht es ja nie. TGGC postet auch schon mal uneingeloggt, andere Unregistrierte schreiben sich mal klein vorne oder auch nicht... 🙄

    de_Bert schrieb:

    Eine Engine ist eine Programm, welches die Funktion hat, bestimme Sachen einzulesen z.B. Texturen, Sounds, oder auch Maus und Tastatur diese dann zu verarbeiten und dann auszugeben.

    Jo, aber Du meinst eine 3D-Engine im Speziellen.

    Die havoc-Physik-Engine liest keine Texturen ein... :p 😉



  • Also ich möchte mal einfach so tun:

    Eine Engine ist eine Sammlung von Funktionen, die für ein bestimmtes Aufgabengebiet (2D/3D - Grafik, Physik, Mathematik, etc.) gedacht ist. Diese Funktionen beinhalten komplexere Handlungsschritte als beispielsweise eine API, sind aber leichter zu handhaben, aber auch nicht so flexibel wie letztere.
    (Mit der WinAPI kann ich Bilder lesen, komprimieren, anzeigen, speichern, dehnen, zerren, invertieren, kopieren, sogar theoretisch über die Soundkarte ausgeben wenn ich wollte. Mit einer 3D-Engine könnte ich es nicht, weil es nicht nötig wäre..)

    Ob diese Funktionen nun Funktionen sind oder Methoden einer Klassenbibliothek sei dahingestellt. Für manchen ist es sinnvoll, für andere wieder nicht.

    cYa
    DjR



  • Hört sich schon gar nicht so schlecht an... 🙂 👍


  • Mod

    gibt es keine doktorarbeit drüber? *g*

    rapso->greets();



  • Sgt. Nukem schrieb:

    TGGC postet auch schon mal uneingeloggt

    Mhhh? Aber mal was Neues!

    BTW: http://dict.leo.org/?search=engine&searchLoc=0&relink=on&spellToler=std&sectHdr=on&tableBorder=1&cmpType=relaxed&lang=de und die erste Übersetzung trifft es schon ziemlich 😉


Anmelden zum Antworten