"Fehler" bei .fbx Import von Blender nach UE4 - Schwarzes Model

  • Guten Tag an die Community,


    ich bin neu hier im Forum und Anfänger im Bereich Blender und UE4. Ich hoffe das ich hier den richtigen Forum gelandet bin.


    Kurz zu dem Problem:

    Ich habe in Blender ein Objekt erstellt, es als .fbx exportiert und dann in UE4 Importiert. Als ich dieses Objekt in das Level gezogen habe, war dies zum großenteil schwarz.

    (siehe Bild)

    https://ibb.co/Fz9KBWf

    [Blockierte Grafik: https://i.ibb.co/2dwyj6L/Bild-2021-12-23-195314.png]


    Was habe ich gemacht, wie bin ich vorgegangen:

    Ich habe in Blender (v3.0) einen Low Poly Charakter mit einem "Spiegel / Mirror Modifikator" erstellt. Als dieser dann grob fertig war, habe ich unter Materialeigenschaften, Materialien hinzugefügt und eine jeweilige Farbe ausgewählt.

    Durch Tutorials wurde ich auf das UV-Edeting aufmerksam. Kurzer Hand habe ich mir dort eine Farbpalette erstellt, den UV-Editor eingeschaltet und habe Bereiche des Models ausgewählt, rechtsklick / UV Flächen abwickeln / Abwickeln gewählt und diese in die jeweiligen Farbbereiche gezogen.

    Am Ende habe ich noch den Charakter "geriggt" (nennt man das so?), also ein Knochengerüst erstellt, diese mit den Jeweiligen Flächen verbunden und im Posing Editor getestet ob es funktioniert.


    Als ich nun den Punkt erreicht habe, wo ich diesen in UE4 testen wollte, habe ich ihn exportiert.

    Dazu:

    Datei / Exportieren / FBX

    Hier habe ich verschiedene Sachen aus diversen Tutorials ausprobiert, in der Hoffnung, dass dort der Grund des Fehlers lag. Ich versuche mal die Optionen aufzuzählen an die ich mich noch erinnere.

    Einmal habe ich "Ausgewähltes Objekt" aktiviert.

    Dann die jeweiligen "Objekttypen" ausgewählt die ich benötige.

    "Transformation anwenden" habe ich ebenfalls mal ausgewählt (das mit dem Warndreieck und dem !)

    Unter "Geometrie" / "Smoothing" habe ich die "Fläche / Faces" ausgewählt.

    selbst einen Hacken bei "Animationen Backen" habe ich gesetzt, obwohl ich keine Animationen erstellt habe. Vermutlich aus der Verzweiflung heraus, dass genau dieser Hacken irgendwie gefehlt haben musste.


    Aber wie Ihr euch denken könnt, hat keines dieser Ergebnisse zum gewünschten Erfolg gezielt.


    Was mir auch auffiel, obwohl ich dies nie bearbeitet habe (anscheinend), bin ich mal oben im Reiter "Shading" rein gegangen, und die "Standard" Scripte/Boxen waren nicht mehr vorhanden.

    Also der "Principled BSDF" und die verknüpfte "Material Ausgabe".

    Mit SHIFT + A konnte ich auch keine weiteren / neue hinzufügen. Als wäre dies komplett deaktiviert werden.


    Um herauszufinden, ab wann dieser Fehler auftrat habe ich eine ältere Version geladen, unter "Shading" nachgeschaut und dort war es wieder.

    Was aber nicht zur Problem Behandlung geholfen hat, was ebenfalls eine Vermutung war.


    Woran lag es?

    Also um heraus zu finden ob es nur an Blender lag, habe ich ein neues Projekt geöffnet, den Würfel als FBX exportiert und in UE4 importiert ... siehe da... Es geht ja anscheinend.

    Danach habe ich eine ältere Version des Charakters geöffnet, ein Material drauf gezogen, exportiert, importiert und siehe da ... auch das ging.


    Also muss ich ja während meiner ganzen Höhen und Tiefen beim erstellen meines ersten Blender Objektes, irgend etwas falsch gemacht haben, oder irgendwo, irgendwie verstellt haben.

    Ich habe nicht nur dieses Modell erstellt sondern auch noch eine weiteres welche die Selben Probleme aufweist.

    Ich möchte mir nur ungern die Arbeit machen und diese komplett neu erstellen.


    Nun schreibe ich hier im Forum, in der Hoffnung, dass einer von euch weiß was das für ein Problem ist, oder vielleicht sogar mal selber dieses Problem hatte und mir aus meiner derzeit leicht verzweifelten Lage Helfen kann.


    Hoffentlich habe ich alles nötige an Informationen erwähnt. Falls ich Etwas vergessen habe zu erwähnen, oder weiterfolgende Fragen auftreten, werde ich diese natürlich schnellstmöglich hier ergänzen.


    Bis dahin wünsche ich euch erst einmal schöne Feiertage mit euren Familien und genießt die Zeit.


    Mit freundlichen (verzweifelten) Grüßen,


    Sascha, der neue in der Community.

  • Sleepy

    Hat das Thema freigeschaltet.
    • Offizieller Beitrag

    Kenne mich mit Blender leider nicht aus aber bis jemand antwortet der sich mit Blender auskennt.


    Ich Vermute einfach mal:


    a)Nach dem Importieren in der UE4 sah das Mesh noch Okay aus ?

    b)Du hast oben auf Build geklickt ?

    c)Dein Charakter ist ein Static Mesh ?


    1.Ein Static Mesh ist ein Mesh das sich nicht bewegt. zb Ein Stein, Häuser Strassenlaternen etc

    2.Wenn dein Charakter ein Static Mesh ist und du auf Build klickst wird der Schatten vorberechnet und quasi als Layer über deine Textur gelegt. (Dein Schatten wird nicht in Echtzeit berechnet)

    3. Ein Objekt das sich bewegt sollte immer Moveable sein. Da es sich bewegt, muss der Schatten immer in Echtzeit berechnet werden es darf also kein Static Mesh sein.


    Dinge die sich nicht bewegen = Static Mesh

    Dinge die sich bewegen = Moveable


    Nun zu deinem Problem: Ich glaube deine Problem liegt in der Light UV. Da dein Mesh ein Static Mesh ist, wird das Licht vorberechent. Das bedeutet Unreal erstellt eine 2D Map (Bild) deines Charakters und zeichnet dort den Schatten rein. Diese Map sollte immer Power of Two sein, (Ein durch 2 teilbares Bild) Bei texturen ist das meist 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 und 4096. (Du kennst diese Zahlen sicherlich aus der Computerwelt)

    Dein Schatten wird innerhalb dieses Pixelmaße gezeichnet.


    Damit das funktioniert, darf sich deine UV im UV Space nicht überlappen. Es ist zwar möglich dass zb das Gesicht deines Charakters außerhalb des UV Spaces liegt. (Dann wird es wiederholen) was bei Kachel texturen durchaus gewünscht sein kann.

    Beim Licht Baken hat das aber die zur Folge das Schatten immer wieder auf die selbe Stelle geschrieben wird.


    Das wäre so als wenn du ein riesiger Text ein ein Stück papier druckst und dieses Papier immer und immer wieder verwendest.

    Am Schluss ist das Papier genau wie dein Charakter zum Teil oder komplett schwarz.


    Lösung: Du musst deine UV nochmal überarbeiten und sie so anordnen damit alle UVs innerhalb des UV Spaces liegen.


    Vermutlich kommt beim Importieren auch ne Warnung: Lightmap UV overlapping by 76% oder so.


    Falls ich damit falsch liege, hast ja vielleicht was gelernt :)


    Edit: DU kannst Screenshots direkt hier im Forum hochladen. Einfach per Drag & Drop hier reinziehen.


    Ich hoffe du verstehst was ich geschrieben habe falls nicht frag einfach nach.

  • Guten Abend Sleepy und kyodai,


    ersteinmal danke für eure schnelle Antwort.


    Zu deiner Aussage kyodai:

    Ich habe folgendes in den Projekt Settings gefunden:

    Unter "Engine - Rendering / Lightning" folgenden Punkt "Allow Static Lighting"

    Dort war bei mir standardmäßig ein Hacken drin.

    Ich habe dieses mal Deaktiviert, UE4 neu gestartet, das fbx Model neu Importiert, aber dies hat leider nichts gebracht.


    Zu deiner Aussage Sleepy:

    Danke für den Tipp das man die Fotos auch direkt per Drag and Drop hineinziehen kann. Das erleichtert einem doch einiges.


    Also das Mesh sah von anfang an so aus wie es auf dem Bild zu sehen war.

    Im Content Browser, bzw wenn ich auf "Rechtsklick / Edit" gehe, sieht es normal aus. Aber wenn ich es ins Level hinein ziehe, bekomme ich, wie auf dem Bild zu sehen, diese schwarzen Schatten.

    Mir ist aufgefallen das es sich dabei tatsächlich um ein Static-Mesh handelt.


    Wie kann ich es denn in ein Moveable Mesh umwandeln?

    Wenn ich das Objekt im Level anklicke, im Fenster "Details" unter dem Punkt "Transform" die Mobility von Static auf Moveable stelle, ändert sich leider nichts daran.

    Auch nicht wenn ich auf "Build" klicke.

    Aber dabei bekmme ich folgende Fehlermeldung bei den "Message Logs"


    Charakter_5 Static mesh actor has NULL StaticMesh property

    (https://docs.unrealengine.com/…ds/LevelEditor/MapErrors/)

    Text aus den Docs:


    This warning is caused when there is a Static Mesh Actor in a level with a NULL StaticMesh property. This can be a problem because the Actor exists and is using memory, but does not have a Static Mesh to actually draw. This warning is usually the result of creating a StaticMesh Actor without first selecting a StaticMesh in the generic browser. This warning can be fixed by first selecting a Static Mesh in the generic browser and then going to the StaticMesh Actor's Property Window->StaticMeshActor Category->StaticMeshComponent->StaticMeshComponent Category to set the 'StaticMesh' Property.


    Wenn ich mir das so durchlese, geht es wohl eher darum das ich dieses Objekt auch als ein Static Mesh erkennbar mache / markiere?


    Aber wie du ja bereits oben geschildert hast, muss ich es ja eh zu einem moveable Mesh ändern.


    Wie genau ändere ich es denn zu einem moveable Mesh?

    War ich bei den "Details / Transform" schon richtig?

  • Sau dumme Frage, aber da sonst noch keiner drauf kam:

    Passen die Normals des Meshes?


    Ich denke mal, du hast ein Two-Sided-Material, weshalb dir nicht auffiel, dass die Normals falsch rum sind...

    Also einfach die Normals richtig rum drehen und es sollte klappen, hatte mal das gleiche Problem.


    Im Edit-Mode alles markieren und:


    Sollte das nicht helfen, lad mal das Mesh hoch ^^

    • Offizieller Beitrag

    Also das Mesh sah von anfang an so aus wie es auf dem Bild zu sehen war.

    Im Content Browser, bzw wenn ich auf "Rechtsklick / Edit" gehe, sieht es normal aus. Aber wenn ich es ins Level hinein ziehe, bekomme ich, wie auf dem Bild zu sehen, diese schwarzen Schatten.

    Mir ist aufgefallen das es sich dabei tatsächlich um ein Static-Mesh handelt.

    Dann hast du nicht gebaked und dann kann es eigentlich nicht an der Light UV liegen.


    Wie genau ändere ich es denn zu einem moveable Mesh?

    War ich bei den "Details / Transform" schon richtig?

    Ja genau das wäre richtig. Da du aber offentsichtlich nicht auf Bake geklickt hast, kann es nicht an der Light UV liegen. Auch wenn der Farm verlauf am Oberarm ein klares Indiz dafür gewesen wäre. Deswegen wir es vermutlich an den Vertex normals liegen.


    Probiere dass mal aus was Butterfly geschrieben hat. Ich glaube die Vertex Normals sind einfach zerschossen. Mich wundert allerdings dass du das in Blender nicht schon falsch siehst. Zerschossene Normal oder Vertex Normals müssten eigentlich schon im 3D Programm auffallen.

  • Guten Abend,


    Geloscht , ich habe deinen Tipp ausprobiert und es funktioniert jetzt.


    Vielen Dank an Euch für eure Mühe, um mir bei meinem Problem zu helfen.


    Ich habe die Funktion in Blender nun aktiviert, wie du es hier zeigst.

    Dazu hätte ich nun ein Frage, was bedeuten denn die blauen Striche?

    Die auch bei dir zu sehen sind?