Von Unity zu Unreal

  • Hallo,

    lang wahr ich nicht hier und nun ist es wieder soweit. Aus Spaß an der Freude, habe ich in Unity ein kleines physikalisches Roulette-Spiel nachgebaut. Bis auf paar kleine Sachen funktioniert auch alles, das "Finishing" steht außen vor. Es muss nur funktionieren.

    Jetzt hatte mich es mal gewurmt, wieder etwas in der Unreal zu basteln. Von daher möchte ich das Roulette-Spiel in die Unreal "portieren", um zu sehen auf welche Hürden ich stoße und wie sich der Aufwand und die Herangehensweise unterscheidet, welche natürlich vom Skill abhängt.

    Anders als in Unity, wird hier das Tableau mit in 3D dargestellt. Ursprünglich war das auch so in Unity geplant. Keine Ahnung was mich gerissen hat das Tableau als UI zu erstellen.


    Bei Interesse, kann ich immer einen Stand posten.

    Glücksspiel ist nicht mein Fall und ich möchte es eigentlich auch nicht veröffentlichen. Möglich wäre das nur als "Social Club" Spiel. Also spielen ohne Echtgeld und es darf auch keine Möglichkeit bestehen, Echtgeld in die Spielwährung umzutauschen usw. Zumal ich nicht glaube, das ich einen so qualitativen Stand erreichen werde. Just4Fun eben...


    Ein mögliches Ziel wird "Schrotte die Bank" sein.


    Erster Schritt wird sein, wieder einen automatischen Ablauf hinzubekommen und ein relativ schickes Verhalten der Kugel.

    automatischer Ablauf: Kugel zum Startpunkt->Scheibe andrehen->Kugel werfen->getroffene Taschennummer ermitteln-> Scheibe abbremsen, sodass die getroffene Taschennummer mit der Kugel nahe am Startpunkt der Kugel stoppt->Kugel zum Startpunkt-> ... .



    Hier sind noch ein paar Bilder von Unity und Unreal. Bei Fragen: Gern, immer her damit.

  • Hi.

    Klar, ich kann gern eine Meinung dazu abgeben! Nur muss wirklich mein Skill berücksichtigt werden. Und der ist in Unreal nicht gerade hoch. Die Möglichkeiten sind mir eben unbekannt. Ggf werde ich auch BluePrint-Ausschnitte hier posten. Vielleicht kann jemand Verbesserungen vorschlagen-> Das aber besser in nen Thread und nicht unter der Vorstellung. Das wird schon... Die Kugel ist schon am Rollen :).


    Oje, ich bin der letzte der wegen sowas "Krieg" anfängt. Die Engines sind ein Werkzeug zum erstellen eines Produkts und keine Religion, politische Meinung, oder was auch immer. Das Ergebnis, sowie der Weg zum Ziel, zählt. In dem Fall eher sogar nur der Weg ;).

  • Hi.

    Der Ablauf funktioniert jetzt schon mal. Nach jeder Runde wird die Drehrichtung und die Geschwindigkeit der Scheibe neu bestimmt. Die Geschwindigkeit mit der die Kugel eingeworfen wird, bleibt immer gleich.

    Die Scheibe wird "smooth" abgebremst und bleibt mit der Tasche, in der die Kugel liegt, dort stehen, wo die Kugel ursprünglich gestartet ist. Es lässt sich noch variieren, ab wann der Bremsvorgang beginnen soll, aber ich glaube, das sieht man nicht so extrem.

    Als nächstes kommt das Tableau in 3D.


    Was sich für mich bis hier her stark zu Unity unterschieden hat:

    Unreal:

    - Sehr viel weniger Probleme mit physikalischen Verhalten.

    - Mir fehlt hier eine Konsole wie in Unity. Diese ist sehr hilfreich und man gewöhnt sich stark daran.

    - Visual Scripting spielt für mich nicht so die Rolle. Es ist toll für den Überblick, also für den Flow und lässt sich in Unreal schön Debuggen, aber einfacher als Code schreiben ist es auch nicht. Die am verrücktesten aussehende Funktion(siehe Bild). Klar, kann man sicher anders machen :)

    - Die mitgelieferten Standardmaterialien in Unreal, aus dem Starterprojekt, sind super. Da kann man anfangs auch schon was tolles zaubern, ohne viel Zeit investieren zu müssen.

    - Mich stört ebenso, dass das Editorfenster starr ist und man dort keine Bewegungen im PlayMode erkennt.


    Mein erstes Fazit(aktuell):

    Bis hier her lief alles einfach, da sich die Funktionalität zu Unity ja nicht unterscheidet. Lernen wie man es umsetzen könnte, muss man trotzdem.

    Für so eine Art von Spiel ist die Unreal schon eine Hausnummer und Unity reicht für solche Sachen locker aus. Bzw, würde ich da auch lieber Unity nutzen wollen. An der Stelle ist das aber reine Geschmackssache.

    Trotzdem würde ich jetzt vom Gefühl her sagen: Wenn es räumlicher wird, oder große Level eine Rolle spielen, würde ich zukünftig lieber Unreal nutzen wollen.

    Im Bereich 2D, kommt nach meiner Meinung glaube nix an Unity ran. Kann auch sein ich irre mich.


    Jetzt geht's mit dem Tableau in 3D weiter. Mal schauen was mich dort erwartet. Ich werde es aber auch noch in Unity in 3D umsetzen.



  • Wieder ein schöner Fortschritt. Noch ein paar kleine Funktionen und ein bissl Fleißarbeit und das Spielchen ist funktionell fertig.



    Unten sind die Münzen vorerst als Mock zu finden. Dort kann der Spieler seinen Einsatz bestimmen.

    Aktuell:

    - Orange = 1

    - Lila = 5

    - Grün = 10


    Die weißen Kugeln sind aktuell 3 Trigger zum platzieren des Einsatzes. Man kann aktuell auf die 0 oder 1 und eine Ecke setzen. Die Fleißarbeit wird hier das Kopieren und Neubenennen der Actor's sein. Welche Zahlen der Actor jeweils repräsentiert, wird zu beginn einmalig aus dem Actor-Name gezogen(Erklärung weshalb kommt noch).


    Aktuell kann man nur beliebig oft die Münze 1 setzen und baut sich somit einen Stapel Münzen auf.

    Siehe Bild.


    Die nächsten Schritte werden daher:

    - Das Einbinden der anderen Einsatzmünzen sein und das Anlegen 2 weiterer. Also die 25er und die 50er kommen noch hinzu.

    - Münzberechnung -> Bedeutet: Wenn ich 1 Geld setzen will und 6 mal auf die Null drücke, dass dann nicht 6x 1Geld Münze aufgestapelt sind, sondern 1x5 Geld und 1x1 Geld. Das geschieht über die Restwertbestimmung. Funzt gut...


    Was mir aufgefallen ist und in den Blueprints ausarten kann, sind mathematische Berechnungen. Da kann schon mal ein schönes Gewirr entstehen.


    Zum Aufbau des Tableau:

    - Die Einsatzmünzen sind 1 Actor. Quasi 1 Brett mit aktuell 3 Schaltern.

    - Die Trigger zum Platzieren sind einzelne Actoren. Hat sich halt als einfacher rausgestellt.

    - Die Münzen die auf den Tableau spawnen sind Actoren.

  • So, bin fertig. Der selbe Stand wie in Unity ist erreicht. Läuft auch auf dem Handy sehr gut.



    Zusammengefasst ändert sich meine Meinung, wie weiter oben zu lesen ist, nicht.

    Was mich in der Unreal mit BB-System am meisten gestört hat, sind mathematische Berechnungen. Die können schon ganz schön ausarten. Das lässt sich dann besser programmieren.


    Was mir im Gegensatz zu Unity bei weitem besser gefällt, oder zumindest hatte ich sehr sehr viel weniger Probleme damit, ist das physikalische Verhalten der Kugel. Das ging in der Unreal viel viel einfacher von der Hand und ich habe auch das Gefühl, dass das auch hier besser läuft, gefühlt flüssiger, wie auch immer. In Unity bin ich da mal fast verzweifelt. Wenn ich darüber schreibe, würde es denke den Rahmen sprengen...Egal. Auch Starterprojekte oder Templates aus dem Store...super.


    Das Tableau werde ich natürlich in Unity noch in 3D abbilden.


    Wenn ich mich entscheiden müsste, mit welcher Engine ich das Spiel vielleicht noch zu Ende bringe, würde das glaube eine schwierige Entscheidung werden.

    • Offizieller Beitrag

    Was mich immer wieder zum Krübeln bringt ist die wirtschaftlichkeit wo beide Programme Vor und Nachteile haben.


    1.Falls sich da was geändert hat, korrigiert mich:

    Will man in Unity mit Pro features entwickeln, muss man erstmal das Geld für die Pro Lizenz investieren. Das ist ein dickes Plus für Unreal


    2. Unity kostet einmalig wobei man 5% an Epic abführen muss wenn der Umsatz über 3000$ liegt. Wer ne Putzfrau einstellt liegt da ganz schnell drüber. Dickes Plus für Unity


    3.Mal unabgäng davon welche Engine nun für was besser geeignet ist, finde ich das sich rein Wirtschaftlich Unity auf Dauer besser rechner wenn man bereit ist erstmal für die Pro zu investieren. Wer aber ohne Investitionen starten will, ist meiner Meinung nach mit Unreal besser dran.

  • Das ist eben auch das Abwägen, wenn man in beiden Engines Erfahrungen gesammelt hat. Okay, ich würde meine Unreal Skills jetzt nicht mit den von Unity gleichstellen, doch kann ich mir gut vorstellen wie der Hase in der Unreal läuft. Es sind ja meist auch die mitgelieferten Tools, welche sich in der Handhabe unterscheiden und nicht der Weg von der Idee zum fertigen Spiel.


    Beide haben vor und Nachteile. Das ist ja wohl klar. In Unity sind zum Teil einfach Sachen veraltet, siehe Terrain-Tool. In meinen unzähligen Miniprojekten, in der Kennlernphase, war ich teils manchmal am Verzweifeln weil was nicht ging... Nach langen hin und her, hat sich herausgestellt, dass es ein Bug der Engine war.

    Jetzt könnte man sagen, finde den Fehler. Jup, nur das ist bei manchen Sachen nicht mal so einfach. Und da kommt auch der wirtschaftliche Aspekt den Sleepy anspricht zu tragen. Als Dev-Studio für Spiele, willst Du ein Spiel entwickeln und nicht noch extra an der Engine rumwursteln, für die man eh schon viel Geld bezahlt. Und wenn Du dann auf nen Fix warten musst und Du nicht weißt wann er kommt. Prost Mahlzeit... Also Zeit versemmeln und um den Bug entwickeln. Und Bugs gibt's in Unity einige. Sicher auch in der Unreal.

    Es hat sich halt ehrlich gesagt zwischen mir und Unity eine gesunde Hassliebe entwickelt. Geld konnte ich mit Unity ja auch schon verdienen. Also als Entwickler eines "Spiels".


    Bei Unity habe ich eh komischer Weise den Eindruck, dass es mehr wieder Richtung 2D geht. Die vielen Tools und Features die da kamen und noch kommen. Die Cinematics ala Adam lass ich da mal außen vor.


    Bei der folgenden Aussage bin ich mir noch unsicher, aber ich hau sie trotzdem mal raus. Bei Unreal und auch bei anderen Engines die ich kennen lernen durfte(auch manchmal nur kurz), hatte ich den Eindruck, dass die Umsetzung gewisser Funktionalitäten geführt ist. Also man kann gewisse Sachen nur im Rahmen der gewissen Möglichkeit realisieren. Bei Unity kann man quasi machen wie man lustig ist. Also der Weg wie man was realisieren kann, geht in viele, bzw alle Richtungen. Das kann als Anfänger erschlagend sein, wenn man sich kein Konzept ausdenkt, um nicht in der Skripthölle zu landen. Sicher, es wird mit Entity-Component geworben. Machen muss man es trotzdem nicht. Was aber gut für fortgeschrittene Entwickler ist.

    • Offizieller Beitrag

    Also ich kann dir sagen wo Epic hin möchte:

    Ich war ja auf der FMX in Stuttgart wo auch Kim Limreri ehemaliger Effekt Künstler durch FIlme wie Matrix bekannt und nun CTO von Epic Games.


    Seine Aussage war Zitat: "Bis in 10 jahren wollen wir auf dem Stand der Film Industrie sein"


    Interessantes und ehrgeiziges Ziel. Klingt jedenfalls nach spanenden 10 jahren.

  • Das klingt wirklich nach einer spannenden Zeit. Zumal es ja jetzt schon klasse aussieht.