Export eines Modells (inkl. Textur) von Blender nach Unreal - warum ist das so schwierig

  • Das kommt auf die Art des Programms an.


    3D-Programme wie Blender stellen Polygone standartmäßig beidseitig dar, weil das auch fürs bearbeiten sinnvoll ist.


    3D-Engines mit Echtzeitdarstellung hingegen sind darum bemüht das Ganze möglichst performant darzustellen und da ist "backface culling" ein wichtiger Bestandteil, wenn es darum geht das nur die Seite des Models berechnet wird, welche vom Spieler gerade gesehen werden kann.

    • Offizieller Beitrag

    3D problemlos an. Aber vielleicht ist da eine automatische Korrektur eingebaut.

    Zum vollständigen Verständnis:

    1. Ein Polygon hat immer zwei Seiten. (Vorder und Rückseite) die Vordere Seite nennt man Normale, das ist die Seite die immer sichtbar nicht.

    2. Bei Engines wie Unreal oder Unity ist das sog. Backface Culling immer an. Das heißt das Verfahren dem dem die Rückseite nicht angezeigt wird, ist standartmäßg immer an.

    3. In 3D Programmen ist wie du Festgestellt hast, das Backface Culling oft aus, deswegen kannst du in 3D Software meist auch die Rückseite sehen. Du hast aber auch die Möglichkeit in jedem 3D Programm das Backface Culling auszuschalten so das auch im 3D Programm die Rückseiten als Fläche angezeigt werden. (Einfach zb mal nach Blender, Cinema4D Backface culling googeln. SO kannst du die Normals bereits im 3D Programm Checken und entsprechend ausrichten.

    4.Die Normals definieren nicht nur die Vorder und Rückseite und auch die Richtung einer Fläche.


    Du kannst dir in deinem 3D Programm auch immer die Normals anzeigen lassen.


    5.Vielleicht verwendest du bei deinen Texturen beireits eine Normalmap oder der Begriff Normal Backen kommt dir bekannt vor ?

    Beim Normal Bakeing werden im Prinzip die Face Richtungen (Siehe Bild) in eine Textur geschrieben.

    Da die Unreal nun weiß, in welche Richtung welches Face verläuft, (Anhand der Normalmap) kann unreal das Licht entsprechend zurückvschmeißen. Dadurch entsteht die Fake 3D Dimensionalität durch eine Normalmap.

    https://upload.wikimedia.org/w…with_scene_and_result.png


    6. Unter bestimmten umständen kann es auch gewünscht sein, dass Backface Culling in Unreal zu deaktivieren. Das kann zb der Fall sein wenn ein Laubblatt dargestellt werden muss, dann würde man beide Seiten des Blattes anzeigen lassen. In unreal nennt sich dass Two-sided Material. Das solltest du aber wirklich nur bei absoluten Flachen dinge wie Papier, Laub etc einstellen.


    7. Es gibt noch ein Problem bei einfachen Flächen: Plazierst du beispielsweise eine Plane als Wand so wird das Licht nur von der Vorderseite (Normal Richtung) aufgehalten. Durch außen Seite zb durch ein directional light oder Spotlight ballert aber das Licht durch,

    Willst du also das dass Licht durch die Hauswand abgeblockt wird, dann brauchst du auch tatsächlich eine Außenwand die das Licht Blockt.


    8.Normals gibts auch nicht um den User zu ärger, sondern das ist ein Technisches Problem.

    Hast du einen Charakter zb Lara Croft so ist für den Player immer die Außenseite zu sehen.

    Sind die Normals falsch rum, ist der Charakter durchsichtig.

    Würde der Rigger nun eine Animation bauen wo Lara Ihre Muskeln zeigt, würde man logischerweise im Weightpainting die Beule nach aussen painten. (Muskel wird Größer wenn der Muskel angespannt wird. Wären die Normals falschrum, dann würde die Beule auch nach innen gehen.


    Ich hoffe du versteht nun wie wichtig die Normals sind. Und das dies nicht von einer anderen Software korrigiert wird sondern einfach entweder angezeigt wird oder eben nicht. (Backface Culling an oder aus)


    9. Ich überprüfe die Normals immer vor dem Export in dem ich im 3D Programm das Backface Cullig deaktiviere. Dann einfach die Flächen die falsch sind selektieren und die Normals invertieren.