Unreal Engine – Erste Schritte

In unserer Branche ist es extrem wichtig immer wieder über den technologischen Tellerand hinaus zu schauen, denn durch neue Technik und Software ergeben sich oft neue Lösungsansätze für bestehende Probleme. Dies wurde mir vor Kurzem bei einem unserer Projekte bestätigt.

Schon seit Längerem beobachten wir bei 17K die Entwicklung von Game Engines mit großem Interesse.

Nachdem wir in ein Projekt für die Firma Burgmaier Technologies GmbH + Co KG mit Processing gestartet sind wurde uns relativ schnell klar, dass wir trotz des relativ einfachen Aufbaus, an die Leistungsgrenzen von Processing stoßen würden.

Da wir von unserem Kunden mit einem 3D Modell versorgt wurden und dieses bereits für Renderings verwendet hatten, entschlossen wir uns auf die Unreal Engine umzusteigen.

Während des Studiums haben Stefan und ich bereits Unity genutzt. Die Unreal Engine war bis zu diesem Zeitpunkt fast nur für Spieleentwickler interessant. Durch die neueste Version haben sich die grafischen Möglichkeiten noch stärker verbessert –  und die Umstellung auf ein Abo Modell (inzwischen kostenlos) hilft zudem eine größer werdende Community zu schaffen.

 

Da wir in unseren Projekten immer versuchen die Grenzen der Interaktion über die reine Bildschirmdarstellung hinaus physisch und sinnvoll zu erweitern, wollten wir hier einen RFID-Reader ansprechen, der uns ausgewählte RFID-Teilnummern zuspielt.

Da die Unreal Engine frei erweiterbar ist, war ich mir sicher eine Lösung für das Problem zu finden, welche keine tiefgreifenden C++ Kenntnisse benötigt. 

Nach etwas Recherche fand ich ein Open Sound Control-Plugin welches OSC-Signale empfangen und senden kann. Einige Tests und Änderungen später, da das Plugin zu diesem Zeitpunkt leider nicht für aktuellere Unreal Engine Versionen geupdated wurde, konnte unser Projekt OSC Signale verarbeiten.

Die serielle Verbindung zum RFID-Reader, sowie das Auslesen der Tagnummern und die Teilzuordnung, übernimmt dabei ein kleiner Processing Sketch. Diese werden über OSC dann an die Unreal Engine geschickt.

Die Community für die Unreal Engine wächst stetig was dazu führt das immer mehr Plugins veröffentlicht werden. Inzwischen ist, dank eines neuen Plugins, die Processing-Brücke überflüssig geworden. Das Plugin UE4Duino ermöglicht es eine serielle Verbindung zu entsprechender Hardware herzustellen. Dies führt dazu, dass auch das direkte Ansprechen von Arduinos möglich ist. Physical Computing in Zusammenarbeit mit der Unreal Engine ist somit ein Leichtes und man darf gespannt sein was sich daraus entwickeln wird (und wir entwickeln 😉 ).

In der Unreal Engine ging es dann an’s Eingemachte, die Einarbeitung in das Blueprint System der Unreal Engine ist dank einer guten Dokumentation überschaubar und mit Hilfe der guten Community lassen sich auch tiefergehende Fragen oft schnell beantworten.

Blueprints sind dabei die visuelle Programmiersprache der Engine, durch sie kann man die klassische Entwicklung in Spiele Engines, mit Hilfe von C++, umgehen und visuell arbeiten.
Dabei müssen sogenannte Nodes (Funktionsblöcke) verkettet werden um einen Programmfluss zu erzeugen. Die Unreal Engine bietet dabei verschiedenste Hilfsmittel um auch dem Einsteiger das Arbeiten zu ermöglichen. So werden an den Ausgänge an einer Node direkt nur relevante Gegenstücke angezeigt. Auch der Fluss des Programms wird schnell klar, da die Programmströme visualisiert werden.

Das Ergebnis war eine Installation, die dem Benutzer durch eine Interaktion mit realen Objekten ermöglicht Informationen abzurufen. Dabei wird ein Echtzeit berechnetes 3D Modell für die Darstellung verwendet.

Diese Arbeit stellt für uns den Einstieg in die Möglichkeiten einer sehr interessanten Technologie und des damit verbundenen Workflows dar. Ich bin sehr gespannt was wir mit der Unreal Engine noch alles realisieren werden.

dk
Related Posts

KOMMENTARE

Comments
  • Emanuel

    Servus,
    merci vielmals für den interessanten Einblick… da wird direkt mal was ausprobiert damit!

    Greetz aus Graz!