Unity vs. Unreal

Unity vs. Unreal – Welche Engine solltest du wählen?

Gefällt Dir der Artikel? Dann teile ihn doch, um diese Informationen auch anderen zugänglich zu machen!

Seiteninhalt

Bei der Entwicklung von Spielen und Echtzeit-Anwendungen stellt sich oft die Frage nach der besten Engine. In diesem Zusammenhang wird besonders häufig die Unity- und die Unreal-Engine genannt. Unity vs. Unreal – welche ist die bessere Engine? Eines gleich vorweg, ganz so einfach ist diese Frage nicht zu beantworten…

Einige werden argumentieren, dass die Unreal-Engine die bessere Wahl ist, weil sie von den meisten AAA-Entwicklerstudios verwendet wird. Andere wiederum bevorzugen die Unity-Engine, weil sie vielseitiger zu sein scheint. Und vor allem für Indie-Entwickler oft einen einfachen Einstieg verspricht. Objektiv gesehen ist es wichtig die beiden Engines anhand verschiedener Kriterien zu analysieren. Und genau das möchten ich dir in diesem Artikel zur Verfügung stellen.

Wir werden auf verschiedene Kriterien eingehen, um beide Engines miteinander vergleichen zu können. Das wird dir einen sehr guten Überblick verschaffen. Am Ende wirst du hoffentlich in der Lage sein eine fundierte Entscheidung zu treffen, welche für dich am besten geeignet ist. Bevor wir starten, gehen wir kurz darauf ein, was eine Engine überhaupt ist…

Was ist eine Engine?

Um den Vergleich Unity vs. Unreal durchführen zu können, sollten wir zunächst den Begriff Engine klären. Eine Engine im Zusammenhang mit dem Game Development beschreibt ein Framework, das zum einen die Logik steuert. Zum anderen ist sie auch für die visuelle und auditive Darstellung verantwortlich. Einfach ausgedrückt ist eine Engine ein Tool, das dir die Erstellung von Spielen oder Anwendungen (2D, 3D, AR, VR) auf einfache Art und Weise ermöglicht.

Zu den am häufigsten verwendeten Engines gehören folgende, wobei Unity und Unreal die bekanntesten sind:

  • Unity
  • Unreal
  • CryEngine
  • Godot

Die gerade erwähnten Engines sind für jeden verfügbar. Somit hat jeder die Möglichkeit, seine eigenen Spiele und Anwendungen zu erstellen. Es gibt aber auch Engines, die von Unternehmen entwickelt und nur intern verwendet werden. Hierzu zählen beispielsweise

  • Frostbite von DICE
  • RAGE von Rockstar

Engines lassen sich nach Art (2D, 3D, AR, VR) unterscheiden, wobei viele die gleichzeitige Entwicklung all dieser Anwendungen ermöglichen. Manche besser, manche schlechter. Um eine reibungslose Entwicklung sicherzustellen, kann eine Engine in folgende Komponenten eingeteilt werden.

Grafik

Die Grafik-Komponente ist für die visuelle Darstellung auf dem Ausgabegerät verantwortlich. Ganz egal, ob es sich um ein Spiel oder eine Anwendung handelt. Sie bietet die Grundlage für die Darstellung von visuellen Effekten wie beispielsweise Licht-, Schatten- oder Partikeleffekten. Aber auch die Visualisierung von Benutzeroberflächen wie zum Beispiel Schaltflächen oder Texten wird dadurch ermöglicht. Allerdings ist diese Komponente nicht für die Berechnung der Effekte verantwortlich. Sie dient vielmehr als Bindeglied zwischen Grafikkarte und Ausgabegerät.

Audio

Neben der Grafik- ist auch die Audio-Komponente sehr wichtig. Sie integriert Sound-Effekte und die Hintergrundmusik realitätsnah. So ist es beispielsweise möglich, Sound-Effekte abhängig von der Umgebung zu erleben. All das lässt sich durch das Importieren von Audiodateien in die Engine realisieren.

Physik

Die Physik-Komponente ist für die Simulation und Berechnung von physikalischen Prozessen verantwortlich. Dazu zählt beispielsweise der Einfluss der Gravitation oder auch die Kollisionsdynamik verschiedener Objekte. Denn ohne die Einbindung physikalischer Effekte in Spielen und Anwendungen würde das ganze schließlich sehr realitätsfremd erscheinen.

Logik

Jedes Spiel oder jede Anwendung folgt einer bestimmten Logik. Denn ohne einen bestimmten Ablaufplan ist nicht festgelegt, was wann passieren soll. Ob es sich um die Eingabe-Erkennung (Tastatur, Maus, …) oder die Darstellung von Texten zu einem gewissen Zeitpunkt handelt. All das wird in der vorab definierten Logik festgelegt, die Teil der Engine ist.

Okay, wir haben uns nun über die grundlegenden Komponenten einer Engine unterhalten. Blicken wir im nächsten Abschnitt auf die beiden bekanntesten Engines…

Was ist die Unity Engine?

Die Unity-Engine wird von Unity Technologies entwickelt und wurde erstmals 2005 veröffentlicht. Sie gilt als eine der beliebtesten Entwicklungsumgebungen. Die Ziel-Plattformen sind neben PC auch Konsolen, mobile Endgeräte und Webbrowser. Somit besteht die Möglichkeit Anwendungen einmalig zu entwickeln und auf mehr als 25 Plattformen zur Verfügung zu stellen. Sie ist nicht nur bei großen Entwicklerstudios, sondern auch bei Indie-Entwicklern und Studenten sehr beliebt.

Darstellung Benutzeroberfläche Unity-Engine

Was ist die Unreal Engine?

Die Unreal-Engine wird von Epic Games entwickelt und wurde erstmals 1998 veröffentlicht. Das im gleichen Jahr veröffentlichte Spiel Unreal diente als Demo für die Engine. Sie besitzt etwas mehr Historie als die Unity-Engine, die 2005 veröffentlicht wurde. Die Ziel-Plattformen sind ebenso PC, Konsolen, mobile Endgeräte und Webbrowser. Die Anzahl der Plattformen ist jedoch nicht so hoch als bei der Unity-Engine. Im Laufe der zahlreichen Iterationen (Unreal Engine 2, 3, 4 etc.) wurde sie von vielen AAA-Entwicklerstudios lizenziert.

Darstellung Benutzeroberfläche Unreal-Engine

Vergleich Unity vs. Unreal

Für viele Entwickler ist die Auswahl der passenden Engine meist eine schwierige Aufgabe. Unreal oder vielleicht doch die Unity-Engine? Welche Vorteile bietet die jeweilige Game-Engine? Und welche ist für meine Anwendung passend? Auf den Vergleich Unity vs. Unreal wollen wir nun anhand verschiedener Kriterien eingehen. Im Anschluss hast du hoffentlich eine gute Übersicht und kannst für deine Anwendung die richtige Engine wählen.

Zu den Vergleichskriterien zählen:

  • Community
  • Grafikqualität
  • Skriptsprache
  • Visual Scripting
  • Unterstützte Anwendungen
  • Asset Store
  • Dokumentation
  • Einstieg & Benutzerfreundlichkeit
  • Rendering
  • Preis

Community

Das erste Kriterium, welches wir für den Unity vs. Unreal Vergleich verwenden wollen, ist die Größe der Community. Unity hält einen größeren Marktanteil als Unreal. Das bedeutet wiederrum, dass eine höhere Anzahl an Entwicklern die Unity-Engine verwenden.

Allerdings spielt das in den meisten Fällen keine große Rolle. Denn beide Engines haben eine ausreichend große und vor allem aktive Community. Das ist auch anhand beider Foren zu sehen (Unity Forum und Unreal Forum). Auf beiden werden wertvolle Diskussionen und Tipps zur Verfügung gestellt, die dir weiterhelfen können. Ebenso ist die Anzahl an YouTube-Kanälen, die hilfreiche Tutorials zur Verfügung stellen, bei beiden Engines vollkommen ausreichend. Auch wir von nobreakpoints stellen auf unserem YouTube Kanal hilfreiche und wertvolle Tutorials zur Verfügung.

Es gibt somit viele Möglichkeiten, um sich über die Engine auszutauschen und Probleme mit Hilfe der Community zu lösen. Einziger Unterschied ist, dass Unity zusätzlich verschiedene Events anbietet.

Grafikqualität

Nach Meinung vieler Entwickler ist die Unreal-Engine in Bezug auf die Grafikqualität der Unity-Engine überlegen. Die Engine von Epic Games ist bekannt für die hochmoderne und fotorealistische Grafik, die den Nutzer in eine atemberaubende Welt eintauchen lässt. Ganz egal, ob es um

  • komplexe Texturen,
  • Lens Flare,
  • Post-Processing oder
  • dynamische Beleuchtung geht.

Die Unreal-Engine ist in diesem Punkt der Unity-Engine voraus. Aus diesem Grund wird sie auch von vielen AAA-Entwicklerstudios genutzt. Allerdings ist die Unity-Engine nicht zu unterschätzen und man sollte sie keinesfalls ignorieren. Sie hat stark aufgeholt, jedoch kommt sie aktuell noch nicht an die Grafikqualität der Unreal-Engine heran. Im folgenden Video findest du einen direkten Vergleich. Mal sehen, ob du erkennen kannst, welche Engine jeweils verwendet wird. Der Unterschied ist so gering, dass es für dich wohl keine entscheidende Rolle spielen sollte. Es sei denn, du arbeitest in einem AAA-Entwicklerstudio oder arbeitest in einer Branche, in der es auf fotorealistische Grafik ankommt.

Skriptsprache

Ein weiterer Punkt ist die Skriptsprache beider Engines. Um für dein Spiel oder deine Anwendung eine Logik zu integrieren, ist es nötig, Skripte zu erstellen. In Unity wird hierzu die Programmiersprache C# verwendet. Für die Unreal Engine hingegen C++.

Für viele, die bisher noch gar nicht oder nur sehr wenig programmiert haben, bietet C# von Unity einen einfachen Einstieg. Im Gegensatz dazu ist C++ gerade für Einsteiger schwierig zu erlernen. Wenn du mit Unity starten und einen Überblick über C# erhalten möchtest, kannst du mit diesem Online-Kurs auf unserer Lernplattform starten. Damit wirst du die Logik, die du benötigst, ganz einfach in deine Anwendung integrieren können.

Auf der anderen Seite gibt es die Möglichkeit das Visual Scripting System Blueprint in der Unreal-Engine zu verwenden. Dieses Tool ist wirklich sehr mächtig und einfach zu bedienen. Es erleichtert dir die Erstellung von Logikabläufen, indem sich verschiedene Funktionen per Drag-and-Drop in den Editor ziehen lassen. Diese kannst du im Anschluss ganz einfach verknüpfen. Somit besteht für dich die Möglichkeit, ohne jegliche Programmierkenntnisse Skripte in der Unreal-Engine zu erstellen. Auch in Unity gibt es die Möglichkeit von Visual Scripting. Allerdings ist hier die Funktionalität nicht auf dem gleichen Level als das Blueprint Tool. Mehr dazu aber im nächsten Punkt…

Blueprint Visual Scripting in der Unreal-Engine

Visual Scripting

Als Visual Scripting wird die Möglichkeit bezeichnet, die Gameplay-Mechanik oder Interaktionslogik über ein visuelles System zu erstellen. Das bedeutet, dass keinerlei Programmierkenntnisse benötigt werden, um Anwendungen mit der gewünschten Logik auszustatten.

Wie bereits im vorherigen Punkt erläutert, lässt sich in der Unreal-Engine das hauseigene Visual Scripting System Blueprint verwenden. Dieses Tool ist zugleich auch eine großartige Alternative, da es einfach zu bedienen und enorm umfangreich ist. Du musst lediglich die verschiedenen Funktionen per Drag-and-Drop in den Editor ziehen und anschließend verknüpfen.

Aktuell besitzt Unity kein eigenes Visual Scripting System. Allerdings gibt es eine Reihe von Tools im Asset Store, die genau das ermöglichen. So auch das Visual Scripting Tool Bolt. Ab der Version Unity 2021 ist dieses Visual Scripting System automatisch im Editor verfügbar. Für ältere Versionen ist es als kostenloser Download verfügbar. Jedoch kommt dieses Tool nicht an das Level von Blueprint der Unreal-Engine heran.

Bolt Visual Scripting in der Unity-Engine

Unterstützte Plattformen

Ein wichtiger Punkt für den Vergleich Unity vs. Unreal sind die unterstützten Plattformen und die Art der Anwendung. Als Entwickler ist es von Vorteil verschiedene Anwendungsarten in der gleichen Engine erstellen zu können. Ob du eine 2D, 3D, AR oder VR Anwendung entwickeln möchtest, beide Engines sollten das anbieten.

Unity ist ein wahres Multitalent. Mit mehr als 25 unterstützten Plattformen gilt sie als Alleskönner. Die Unreal-Engine bietet auch Support für zahlreiche Plattformen. Allerdings eine nicht so hohe Anzahl wie bei Unity. Dieser Punkt geht also klar an die Engine von Unity Technologies.

Wie oben bereits genannt, ist es ebenso wichtig zu wissen, welche Art von Anwendung du erstellen möchtest. Werfen wir einen kurzen Blick auf eine Reihe verschiedener Arten und welche Engine sich dafür eignet:

2D

Sowohl Unity- als auch die Unreal-Engine sind für 2D Anwendungen geeignet. Obwohl sich beide Engines dafür verwenden lassen, bevorzugen wir Unity. Mit dieser Engine ist es einfacher, 2D-Spiele zu entwickeln. Zudem lässt sie sich leichter auf leistungsschwache Hardware skalieren. Unity bietet die Light Weight Render Pipeline, die speziell für leistungsschwache Geräte mit alten GPUs gedacht ist.

3D

Beide Engines verfügen über großartiges Potential bei der Entwicklung von 3D Anwendungen. Allerdings bietet Unreal die bessere Grafikqualität. Besonders hinsichtlich komplexen Texturen, Post-Processing oder dynamischer Beleuchtung. Möchtest du die beste Grafik integrieren, so wirst du an Unreal nicht vorbeikommen.

Browser

Unity bietet mit WebGL eine solide Unterstützung für das Erstellen von Inhalten, die im Webbrowser ohne zusätzliche Plugins laufen. Die Plattformunabhängigkeit von Unity erleichtert die Veröffentlichung von Browseranwendungen auf verschiedenen Betriebssystemen.

Unreal unterstützt ebenfalls die Ausführung von Inhalten im Browser, allerdings ist die Implementierung aufwändiger als bei Unity. Unreal´s WebAssembly-Unterstützung ermöglicht jedoch die Ausführung von hochwertigen Grafiken direkt im Browser.

Mobile

Unity hat einen starken Ruf in der Entwicklung von mobilen Spielen und Anwendungen. Die Engine ermöglicht eine einfache Anpassung an verschiedene mobile Geräte und Betriebssysteme. Unity’s Lightweight Render Pipeline und die optimierte Performance machen sie besonders geeignet für Mobilgeräte mit begrenzten Ressourcen.

Unreal bietet ebenfalls mobile Unterstützung, jedoch ist die Lernkurve etwas steiler im Vergleich zu Unity. Unreal’s Blueprints kann die Entwicklung für mobile Plattformen erleichtern. Allerdings ist die Entwicklung von mobilen Anwendungen mit Unity einfacher.

Virtual Reality

Unity zeichnet sich hinsichtlich Virtual Reality besonders aus, da die angebotenen Plugins sehr vielseitig sind. Sie lassen sich zudem in die gesamte XR-Infrastruktur integrieren. Aber auch Unreal ist im Hinblick auf diese Anwendungsart nicht zu vernachlässigen. Viele Entwickler sprechen sich allerdings aufgrund der Benutzerfreundlichkeit und der großen Anzahl an Features für Unity aus.