Unreal Engine 5 oder Unity?
Ich bin mir extrem unsicher.
Also erstmal: Ich würde gerne Games wie Pc Building Sim Programmieren, aber auch mal Jump and Runs mit cooler Grafik. Gleichzeitig hätte ich aber wiederrum auch Lust 2D Games zu erstellen - kleine Storygames zB.
Das Problem: Ich habe kp ob ich lieber anfangen soll Unity zu lernen oder mich mit Unreal Engine beschäftigen soll. Unity hat den Vorteil, das es viele Assets gibt, Funktionen wie Unity Ads gleich inklusive sind, das man sowohl 3D als auch 2D programmieren kann und das es eine viel größere Kompatibelität hat.
Unreal Engine hat aber - verzeih mir für das Wort - so extrem geile Grafik. Korrigiert mich wenn ich falsch liege, aber ich glaube auch dass es einfacher ist.
Ich bin hin und hergerissen.
Was empfehlt ihr mir - gerne mit Begründung
Aber dann sehe ich im Unity assets Store auch wieder, das es auch hier geile Assets mit geiler Grafik gibt: Viking Village URP | Tutorial Projects | Unity Asset Store
16 Stimmen
8 Antworten
(...) Ich würde gerne Games wie Pc Building Sim Programmieren, aber auch mal Jump and Runs mit cooler Grafik (...) 2D Games (...) kleine Storygames (...)
Für die genannten Anwendungsfälle ist Unity schon eine gute Wahl. Wie schon von anderen Antwortgebern geschrieben, bietet sie einen m.E. einfacheren Einstieg in die Spieleentwicklung, wobei ich trotzdem Spieleentwicklung explizit von der Programmierung begrifflich trennen möchte.
Solltest du noch keine C#-Kenntnisse besitzen, würde ich sehr dazu raten, erst einmal diese Programmiersprache zu lernen. Das Gleiche würde für die Unreal Engine gelten, nur dass da die primäre Sprache C++ wäre. Auch wenn es Visual Scripting-Systeme (wie Blueprints oder Bolt) gibt, hast du mit textueller Programmierung letzten Endes etwas mehr Freiheiten.
Tutorials, Dokumentationen oder Foren zu Unity und C# gibt es jedenfalls in großer Menge. Ein paar für letztere Technologie habe ich hier schon einmal aufgelistet. Zumindest die Grundlagenthemen wie Variablen, Operatoren, Arrays, Kontrollstrukturen, Enumerationen und den Konzepten der objektorientierten Programmierung wären von Relevanz.
Für Unity solltest du dich zunächst auf der offiziellen Seite umschauen, denn dort findest du Verlinkungen zur Dokumentation, API Referenz und offiziellen Lernplattform. Auf YouTube wiederum findest du zum einen den offiziellen Kanal der Entwickler (für News/Feature-Vorstellungen) und zum anderen etliche YouTuber, die auf ihren Kanälen zeigen, wie man bestimmte Effekte umsetzt, Features nutzt oder eben einen ersten Einstieg in die Bedienung der Engine findet. Ein paar Kanalvorschläge wären 3DBuzz, Ask Gamedev, Brackeys und Code Monkey. Seitens Unity gibt es ebenfalls Empfehlungen.
Unity hat den Vorteil, das es viele Assets gibt, (...)
Sowohl zu Unity als auch Unreal gibt es einen Asset Store. Einige Assets kann man auch in die jeweilig andere Engine importieren.
Wenn du Spiele mit eigenem Charakter entwickeln möchtest, würde ich empfehlen, dass du dich zusätzlich mit Grafiksoftware (wie Adobe Photoshop / Gimp / Krita) und Modellierungssoftware (wie Autodesk Maya 3D / Blender / Cinema 4D) beschäftigst. Etwas mehr dazu hier.
(...) Funktionen wie Unity Ads gleich inklusive sind (...)
Ich denke, an der Integration von Werbung scheitert es bei keiner von beiden Engines (Stichwort: Ad Mob).
Für den Anfang würde ich mir darum auch keine Gedanken machen und dir eher den Rat geben, dich erst einmal darauf zu konzentrieren, gute Spiele produzieren zu können. Das schreibe ich so explizit, da es mir manchmal etwas wie ein Hype erscheint: Spiele programmieren und sofort/schnell Geld verdienen. Dabei sollte das meiner Meinung nach nicht das erste Ziel sein.
(...) so extrem geile Grafik.
Auf die visuelle Ebene hast du bei beiden Engines in erster Linie selbst einen großen Einfluss. Wie du nun Lichter setzt, welche Texturen und Modelle du verwendest, welchen Stil du überhaupt verfolgen möchtest oder was für Shader du einsetzt.
Das ist soweit aber alles mit einem ziemlichen Aufwand verbunden und verlangt einiges an Erfahrung. Setze dir also AAA-Spiele nicht direkt als Maßstab. Diese Spiele sehen so toll aus, da an diesen mehrere erfahrene Entwickler und Designer über längere Zeit dransitzen.
Setze deinen Hauptfokus stets auf Kreativität und Spielspaß. Da sich ein Spiel aus vielen unterschiedlichen Komponenten zusammensetzt (Storytelling, Sound, Leveldesign, ...), gibt es verschiedene Stellschrauben, an denen du drehen kannst.
So als kleine "Faustformel" Unity ist sehr Anfängerfreundlich und bietet viele Assets besonders gut für Indie Games und kleine Entwicklerstudios. Unreal Engine ist performanter also besser für Spiele mit sehr guter Grafik allerdings brauchst du dann Kenntnisse in C++ und C++ ist ziemlich schwer und kompliziert vor allem als Einsteiger. Außerdem ist bei Unreal Engine die Zahl von Tutorials und Hilfestellungen nicht so groß wie bei Unity also ich würde ganz klar für Unity sprechen...
C# ist einfacher und Unity baut von Haus aus auf C#. Unity kann geile Grafik, es macht nur niemand, denn die, die in der Lage sind, solche Grafik zu entwickeln, arbeiten meist professionell und können demnach auch C++, welches ich dir als Anfänger nicht empfehlen würde
Unity ist einfacher zu verstehen
und unreal engine eher für große Firmen mit mehr Erfahrung gedacht ist
Bei Unreal Engine kannst du dir auch Erweiterungen wie z.B. Quixel Bridge installieren. Mit Quixel Bridge kannst du dir Vorgefertigte assets Herunterladen mit verschiedenen Qualitäten. Du kannst dir ja mal ein Video angucken in Quixel Bridge erklärt wird.
Das ist meiner Meinung kein Argument für die UE da das Unity auch kann und was bringen einem Assets wenn man nicht Programmieren kann