Gameassets Substance Painter -> Unreal Engine

  • Hi Leute!


    Ich versuche zurzeit ein Gameasset zu erstellen. Nachdem ich meinen Objekt in Painter texturiert habe,
    exportiere ich ihn nach Unreal, doch in Unreal werden mein Mesh und Texturen getrennt dargestellt.
    So muss ich erst ein paar Manipulationen machen, um das fertige (texturierte) Asset zu bekommen,
    das ich dann verwenden kann.
    Gibt es eine Möglichkeit, das komplette Asset im Substance Painter zu erstellen, um nichts mehr in Unreal
    zu machen? (so wie in der Assetpacks aus dem Marketplace von Unreal Launcher.)


    Ich würde mich auf Ihre Antworten freuen.

  • Du kannst beim Importieren doch angeben ob die Materials mit Importiert werden sollen. Doch ich gehe da ein anderen Weg.
    Ich habe ein Mastermaterial gebaut mit einigen Effekten usw... Ich erstelle mir dann nur noch eine Instance davon und teile die Texturen zu.


    In der Mesh-Ansicht weise ich dann das neue Material zu und ich muss nicht mehr jeden Objekt ein MAterial zu weisen, wenn ich es in die Scene ziehe.


    Ich hoffe du meintest das ...

    • Offizieller Beitrag

    Wenn du zb ein Auto in die UE importieren willst, willst du die Reifen eventuell als extra Objekt damit du in der UE die eine Reifen Animation erstellen kannst. Deswegen ist es manchmal durchaus sinnvoll Objekte als Static Mesh einzeln zu haben.


    Du hast nun zwei Möglichkeiten:


    1. Du kannst wie @Arogom schon gesagt hat dein ganzes Mesh im 3D Programm zu einem Objekt machen. Je nach der 3D Software die du verwendst heißt diese Funktion dann Combine, verschmelzen usw.
    2.Was ich aber gerne machen: Ich erstelle mir ein extra Mesh das verbunden ist (Combine) und importiere dieses in Substance und co. Das Mesh das aus einzelnen teilen besteht importierst du in die UE. Du machst im Painter die Textur fertig und erstellst in der UE ein Materail und legst die Textur von Painter auf dein Objekt.


    Für den Substance Painter verwendest du als ein verbundenes Mesh und für die UE4 ein Mesh aus einzellnen teilen.


    Substance Painter behandelt separate Meshes als MeshID wodurch man dann bestimmte Mesh teile einfach ausblenden kann. Du kannst du ein Ritter mit Rüstung in den Painter importieren und dort die Rüstung einfach ausblenden wenn die Rüstung ein separates Objekt ist.
    Getrennte Objekte haben also durchaus ihre Daseinsberechtigung.


    Das Verbinden von Objekten machst du aber definitv im 3D Programm.

  • Danke fur eure Antworten, Aragon und Sleepy. Ich entschuldige mich im voraus fur Anfängerfragen:


    Nachdem ich meine Geometrie in Modo erstelte, und danach sie in Painter texturierte, muss ich die
    Texturen an Geometrie backen und wieder in Modo exportieren? In Modo alles zu einem Objekt machen, und erst dann
    das fertige Asset(.fbx Format) in Unreal schicken? Sozusagen: Modo -> Painter -> Modo -> Unreal?


    (Ich habe Substance Plugin für Unreal zwar installiert, aber er kann nur .sbsar Format von Substance Designer
    öffnen, und kein .spp von Painter.)


    Sleepy, ich will das schon so machen, wie Aragon sagt, da ich mich mehr mit Modo auskenne. und weniger in Painter & Unreal.
    Hier sind ein paar screenshots von meinem Objekt (1.Assets, die ich erstellen können will, 2.mein Mesh ohne Textur und 3.mit einfacher Modo-Textur)

    • Offizieller Beitrag

    Nachdem ich meine Geometrie in Modo erstelte, und danach sie in Painter texturierte, muss ich die
    Texturen an Geometrie backen und wieder in Modo exportieren? In Modo alles zu einem Objekt machen, und erst dann
    das fertige Asset(.fbx Format) in Unreal schicken? Sozusagen: Modo -> Painter -> Modo -> Unreal?

    Nein du erstellst deine Modelle in Modo, exportierst dieses nach Substance. Dort machst du deine Texturen und speicherst diese zb als Diffuse.png, normal.png usw ab.


    Nun Importierst du dein Modell (Nackt ohne Texturen) in die Unreal. Nun Importierst du die Texturen in die Unreal und erstellst dort ein Material. Du weißt im Material die jeweilgen Texturen im Richtigen Slot zu, zb. Diffuse dem Diffuse Slot. Nun Speicherst du das Material und fertig.


    Den Textur Import in Modo kannst du dir sparen die Modelle verlassen Modo nackt und werden auch nicht mehr importiert.

    (Ich habe Substance Plugin für Unreal zwar installiert, aber er kann nur .sbsar Format von Substance Designer
    öffnen, und kein .spp von Painter.)

    Du speicherst die Terxturen als PNG (Bild Format) du brauchst dafür kein Substance Plugin.
    DIe Unreal kann auch keine spp Files verstehen nur Bildformate wie Tga, PNG usw.


    Das Substance Plugin ist nur für Prozentuale Texturen aus dem Substance Designer gedacht. Mit Files als sbsar kannst du zb eine Bodentexur Dynamisch verändern.


    Files aus dem Painter sind keine Prozentualen Maps und müssen als Textur exportiert werden.

  • Sleepy, vielen Dank für die Erklärung. Ich habe so gemacht, wie du es beschrieben hast.
    Zwar habe ich das texturierte Mesh bekommen, doch es funktioniert nur in dem Projekt korrekt,
    wo ich es erstellt habe. In einem anderen Projekt funktioniert er nicht mehr.


    Das zweite Problem: ich habe immer noch ein Bündel von .uasset Files und kein fertiges Asset.


    Bild_1: Material wurde erstellt und auf das Mesh aufgetragen. "Red_Arch_8_Segments" -> ist genau das, was ich brauche.
    Bild_2: Ich habe alle Files, die zu meinem Asset gehören, in einen Ordner "golden_arch" gelegt und verschiebe ihn in den
    UnrealProjekt, den ich brauche.
    Bild_3: In diesem neuen Projekt wird mein Material (und damit auch das Asset) nicht korrekt dargestellt.


    Weisst du, woran das liegt?
    P.S. Ich schaue mir gerne Tutoren auch, aber ich finde nicht immer das, was ich brauche.

    • Offizieller Beitrag

    Zwar habe ich das texturierte Mesh bekommen, doch es funktioniert nur in dem Projekt korrekt,
    wo ich es erstellt habe. In einem anderen Projekt funktioniert er nicht mehr.

    Vielleicht nochmal als Errklärung: Du Importierst das Mesh, danach importierst du die Texturen. Nun erstellst du das Material und steckst die richtigen Texturen in die richtigen Slots. Nun auf Speichern klicken.
    Beim Importieren wird die Textur und dein Mesh in den entsprechenden Projekt Ordner kopiert und vom Material ausgelesen. ( Das Material ist sozusagen mit der Textur verlinkt)
    Merke: Mesh + Textur + Material sind eigenständige Objekte. Verschiebst du das Mesh, verschiebst du NICHT automatisch auch die Textur oder das Materal.
    Damit dein Mesh auch in einer anderen Szene korrekt dargestellt werden kann, musst du Mesh + Textur auch in dieses Projekt importieren und dort ein neues Material erstellen.
    Dann sollte es gehen.


    Von allen wegen wieder irgend was aus der UE4 zu exportieren und in ein anderes Projekt zu importieren würde ich dir abraten.

  • Ich würde gerne mal die Frage etwas erweitern.
    Wen man seine fertigen Assets in einem anderen Projekt verwenden will, kam man dieses durch das migrieren erreichen wie @DarkFaces schon schrieb.
    Wie verhält es sich aber wen man seine Assets zum Beispiel weitergeben möchte. Der Free Content von Epic oder andere Assets werden auch nicht migriert. Also vereinfacht ausgedrückt. Wie speichert man etwas ab um es jederzeit ohne neues zusammenstöpseln verwenden zu können.
    Marktplatz fertig sozusagen. :)
    Edit: Oder ist die Sache damit schon erledigt wen der Content in einen Anderen Ordner migriert wurde.

  • Man kann auch in einen anderen Ordner migrieren, man bekommt dann glaube ich ne Warnung aber es geht wenn ich mich recht erinnere


    Das Migrate Tool nimmt halt alle Abhängigkeiten mit, samt der Ordnerstruktur.


    Man kann auch alles von Hand kopieren, dann muss man aber selber dafür sorgen das die Ordnerstruktur stimmt, sonnst werden eben Texturen zB nicht gefunden.

    • Offizieller Beitrag

    Ich verstehe die Logik nicht: Man Importiert die Assets aus einem 3D Programm oder dem Marktplatz was auch immer.
    Warum solllte man dann die Objekte wieder aus der Unreal exportieren wenn man doch gleich die Assets vom Marktplatz oder dem 3D Programm importieren kann.
    Wenn man Modelle aus der Unreal mit dem Migrate exportiert bekommt man schrottige triangulierte Meshes die eigentlich nicht mehr bearbeitbar sind oder zumindest nur mit einem extremen Mehraufwand.
    Ich bin mir sicher das man bei diesem Workflow eine menge Probleme bekommen kann.
    Mein Workflow ist es jedenfalls nicht und ich kann jedem vom Export aus der Unreal abraten. Ich hab lieber Modelle mit einem sauberen Edgeflow die man bearbeiten kann als seltsame triangulierte Meshes. Solche Meshes würde ich auch zweimal nicht kaufen.

  • Warum solllte man dann die Objekte wieder aus der Unreal exportieren wenn man doch gleich die Assets vom Marktplatz oder dem 3D Programm importieren kann.

    Und was macht man mit eigenen Assets mit komplexen Materials und Logik?

    Wenn man Modelle aus der Unreal mit dem Migrate exportiert bekommt man schrottige triangulierte Meshes die eigentlich nicht mehr bearbeitbar sind oder zumindest nur mit einem extremen Mehraufwand.

    Das Migrate Tool kopiert die Assets mit allem drum und dran in ein anderes Projekt.

    Mein Workflow ist es jedenfalls nicht und ich kann jedem vom Export aus der Unreal abraten.

    Es geht nicht um Export.

    • Offizieller Beitrag

    Und was macht man mit eigenen Assets mit komplexen Materials und Logik?

    Was für eine Logik haben den Assets ? Ich verstehe nicht was du meinst.


    Ich würde das Mesh und die Maps importieren. Das Material erstellst du in der Engine und fertig. Ich verstehe den Workflow einfach nicht, jedes Asset das sich in der UE4 ist, muss ja auch irgend wann mal importiert worden sein.
    Ich sehe keinen Grund warum man den Kram exportieren sollte.




    Das Migrate Tool kopiert die Assets mit allem drum und dran in ein anderes Projekt.

    Beim Import wird das Mesh trianguliert und wenn du mit dem Migrate Toll exportierst bekommst du nur trianguliere Objekte heraus. Ich mag aber lieber Quad modelle mit dehnen ich arbeiten kann.


    Es geht nicht um Export.

    Migrate ist aber Export.

  • Ich habe die Lösung meines Problems gefunden, und DarkFaces hat sie auch beschrieben. Das Problem lag an der Ordnerstruktur (sie muss identisch sein).
    DarkFaces: Danke für Migrate-Tool-Ratschlag. Jetzt kann ich meine Assets von Projekt zu Projekt schnell und ohne Fehler kopieren.


    P.S. Also, wenn ich meine Assets als Free-Content weiter geben will, muss ich alle Asset-Files in einen Ordner verschieben und das wars?


    Umgefähr so:


    Assets ->Material
    ->Meshes
    ->Textures

  • Darum geht es doch. Also für mich sind das zwei Paar verschiedene Schuhe.
    Basic Modelle auf die ich zurückgreifen und verändern kann. Texturen die ich nach Belieben ändern kann.
    Die Assets hingegen sind nicht unbedingt dafür ausgelegt sie zu verändern. (Bedingt)
    Vielmehr sofort Einsatzbereit. Gut sortiert in einer Bibliothek kann man damit doch wesentlich schneller ein Projekt erstellen. Es gibt vielleicht auch Leute die kein 3D Programm verwenden und nur fertige Assets wollen.
    Für mich persönlich wäre die beste Lösung sowohl ein fertiges Asset zu haben das man jederzeit schnell einsetzen kann und dazu das Modell in Quads um es im Notfall individuell anpassen zu können.