3D Forum > Substance Painter FBX Importproblem (Invertierte Normals)

Substance Painter FBX Importproblem (Invertierte Normals)

18.02.2015 08:47
 
GastMi. 18 Feb. 2015, 08:47 Uhr
So ich habe mal wieder ein "neues" Problem gefunden.

Es scheint es so zu sein das der Substance Painter wohl gerne mal die Normalen der importieren FBX Dateien verdreht.

Ich schildere dazu mal genau meinen Ablauf und hoffe, das sich hier jemand findet der auch mit dem Substance Painter arbeitet und vielleicht eine Lösung für dieses Problem kennt.
Zuvor sei gesagt, ich arbeite mit 3D Studio Max 2014.

Ich habe nun ein Modell welches aus 3 Teilen besteht, Rumpf, Seitenteil_Innen und Seitenteil_Aussen.
Jedes dieser 3 Objekte hat eine eigene UV Map und wurde in 3DsMax mit einem eigenen Material belegt.

Ich habe diese 3 Modelle mal als OBJ exportiert und im Painter importiert, alles sieht sehr gut aus, auch die Normalmap wird richtig angezeigt, die Materialien die ich auftrage sehen absolut OK aus.
Wie in diesem Bild (Habe einfach ein Stahl Material mit Rost drauf gelegt)




Nun wollte ich mein Modell gerne als FBX haben um im Painter alle Bereiche gleichzeitig bearbeiten zu können.
Damit es keine Verschiebungen gibt, musste ich alle Objekte in 3DsMax importieren und zu einem Modell Attachen/Anhängen, dieses "komplette" Objekt muss dann auf den 0 Punkt des Grids ausgerichtet sein, ansonsten gibt es Verschiebungen der Unterobjekte.
Die 3 Bereiche habe ich mit verschiedenen Materialien in Max belegt, damit ich diese Materialbereiche dann später im Painter getrennt bearbeiten kann (Da ich ja für jeden Bereich eine separate UV Map habe).

Als ich dann mein Modell importiert habe sah es so aus :




Mal abgesehen davon das man erkennt, dass das gleiche Material (Stahl mit Rost) nun komplett anders aussieht, sieht man auch das all diese Objekte invertierte Normals haben.
Das kuriose dabei ist, das dieses Modell in anderen Programmen absolut OK dargestellt wird, die Normalen scheinen völlig OK zu sein, nur im Painter ist es verdreht.

Um das Problem zu lösen habe ich also die Normalen umgekehrt und habe die FBX erneut im Painter importiert.
Das Ergebnis sah wie folgt aus :




Wie man nun erkennen kann, sind die Normalen auf den ersten Blick OK, was jedoch eigenartig erscheint, ist wiedermal das Material.
Es handelt sich erneut um Stahl mit Rost und sieht extrem komisch aus, nicht zu vergleichen wie bei der OBJ Datei.

Auf den zweiten Blick kann man erkennen, das die Normalmap (sofern man sie kennt) beim Cockpit invertiert ist. Es sieht also stark danach aus als ob jetzt die Normalen immer noch nicht stimmen obwohl wir sie gedreht haben.
Der Grund wieso das Material auch so komisch aussieht ist wohl, das es sich bei der Darstellung ebenfalls um die Innenseite handelt.

Die Frage die ich mir somit stelle ist, hat einer von euch eine Ahnung was ich machen muss um meine FBX korrekt anzeigen zu lassen ?
Muss ich in Max Modifikatoren wie ResetXForm verwenden (klappt nicht war nur ein Beispiel) oder muss ich irgendwas beim Export der FBX beachten ???

Habe schon mal gelesen das es wohl auch teilweise Probleme bei gespiegelten Bereichen geben kann, eine Lösung habe ich bisher jedoch noch nicht gefunden.
Würde mich über jede Hilfe freuen, denn es wäre schon mehr als praktisch wenn ich mein Modell nicht in 3 Teilen texturieren müsste, denn so würde ich die Gesamtoptik nicht haben.

​Gruss Harlyk
 
TilesMi. 18 Feb. 2015, 09:17 Uhr
Probiers mal mit Obj ob die Normals dann auch flippen.
 
GastMi. 18 Feb. 2015, 09:41 Uhr
Habe ich doch schon Tiles, das habe ich doch bei Bild1 beschrieben und gezeigt das die OBJ Dateien völlig OK sind.
Sowohl die Normals als auch die Materialien und Maps
 
TilesMi. 18 Feb. 2015, 09:50 Uhr
Ah, verdammt. Sorry. Das kommt davon wenn man mich frühmorgends mit zu viel Text überfordert XD

Nächster Test wäre dann wohl rauszufinden ob Max den Export vergeigt oder Substance Painter den Import. Mh, mal mit einem anderen Programm laden das FBX kann? Vielleicht haste ja noch Unity auf Platte.

Oder jag das FBX doch mal durch den FBX Konverter und speicher in einer anderen FBX Version.
 
GastMi. 18 Feb. 2015, 10:10 Uhr
Hrhr Tiles, das mit der Darstellung in anderen Programmen hatte ich unter dem zweiten Bild auch erwähnt.

Das kuriose dabei ist, das dieses Modell in anderen Programmen absolut OK dargestellt wird, die Normalen scheinen völlig OK zu sein, nur im Painter ist es verdreht.


Aber du hast recht, ich werde da jetzt etliche Tests ausprobieren, das Problem ist wohl der Painter, habe schon ein paar Beiträge im Netz gefunden aber keine Beiträge wo auch eine Lösung drin war.

Beim Painter kann man leider keine Einstellungen beim Import vornehmen daher werden meine nächsten Schritte wohl folgende sein:

1) Verschiedene Exports, mit anderen Achsenausrichtungen und sonstigen Harken die man so setzen kann.
2) Verschiede Modifikatoren einsetzen und schauen ob der Export dann läuft
3) Vielleicht mal die OBJs neu importieren und dann als FBX Exportieren
4) Export nicht als Polygon sondern als Mesh
5) Andere Programmimporte testen.

Was ich nicht versuchen werde ist mit anderen Programmen das ding als FBX zu exportieren. Habe keine Lust noch ein weiteres Programm zu installieren nur um meine Objekte als FBX zu exportiern.

Ich gehe auch stark davon aus das es eine Lösung gibt, denn als ich habe ja auch mein Pferd als FBX exportiert und das wird kurioser weise korrekt dargestellt.
Ich hatte zwar auch die Probleme mit den invertierten Normals aber nur teilweise also nicht beim kompletten Mesh, nur die gespiegelten Bereiche waren geflippt.
Als ich diese korrigiert hatte, war alles OK, auch die Materialien sahen gut aus also irgendwas muss ich beim Pferd getan haben das es am Ende OK war.

....da hilft nur export / import / export / import , bis ich was gefunden habe.


Es sei denn jemand von euch hat eine Lösung, ... dann kann ich nur sagen, her damit smile
 
SleepyMi. 18 Feb. 2015, 11:17 Uhr
Oh je
Also dieses Problem kenne ich gar nicht. Ich würde aber versuchen das Problem irgend wie einzugrenzen.

1. Sind die Normals wirklich verkehrt herum oder sind beide Seiten vielleicht transparent ?
2.Hast du Fehler im Mesh überprüft ? zb doppelte Geometrie an den stellen. Ein Face richtig rum eine Falsch rum.
3. Importier mal einen Standart Würfel aus Max und schau ob das dann das selbe Problem hast.
4. Schalt mal in Max das Backface culling an und prüf ob da alles korrekt angezeigt wird.

Ich kann mir nicht vorstellen das der Substance Painter einfach so das Mesh verdreht. Ich tendiere deswegen dazu das du Fehler in der Geometrie hast.
 
defraggerMi. 18 Feb. 2015, 11:19 Uhr
FBX von Max nach Substance funktioniert einwandfrei. Du brauchst kein weiteres Tool dafür. Ich denke dein Mesh ist durch das Attachen irrgendwie kaputt gegangen.

Mach mal in Max auf dein Objekt Reset XForm -> Collapse. Dann den Normal Modifier drauf -> Collapse. Dann mach Backface-culling an und Flip alle Polygone im Editable-Poly anschließend so, dass sie in Max richtigrum dargestellt werden.
Beim FBX Exporter im Bereich "Geometry" ankreuzen: Smoothing Groups, Triangulate, Preserve edge orientation
Die anderen Sachen nicht ankreuzen!

In Substance einfach rein ziehen. Das wars!

Sag mal bescheid ob alles funktioniert hat.
 
GastMi. 18 Feb. 2015, 11:50 Uhr

Mach mal in Max auf dein Objekt Reset XForm -> Collapse. Dann den Normal Modifier drauf -> Collapse. Dann mach Backface-culling an und Flip alle Polygone im Editable-Poly anschließend so, dass sie in Max richtigrum dargestellt werden.
Beim FBX Exporter im Bereich "Geometry" ankreuzen: Smoothing Groups, Triangulate, Preserve edge orientation
Die anderen Sachen nicht ankreuzen!

In Substance einfach rein ziehen. Das wars!

Sag mal bescheid ob alles funktioniert hat.


Ok werde das alles mal testen.

Vorab die Frage: "Normal Modifier drauf -> Collapse" Gleichrichten oder Flipp aktivieren oder nichts dergleichen ?

Und hier mal ein Thread wo auch jemand diesen Problem hatte :
https://forum.allegorithmic.com/index.php?topic=3472.0

Hatte diese Probleme wie auch schon beschrieben beim Pferd, aber jetzt scheint die FBX wieder OK zu sein.
Irgendwas ist also anders.

Werde eure Ideen mal ausprobieren und all mögliche Tests fahren. Danke erstmal für die Ideen
 
defraggerMi. 18 Feb. 2015, 14:08 Uhr
Die Einstellungen im Normal Modifier sind eigentlich egal. Er Reseted die Normalen. Das ist die Hauptsache.

Unify Normals -> aus
Flip -> an

In dem verlinkten Thread (https://forum.allegorithmic.com/index.php?topic=3472.0) geht es um die orientierung der Normalmap. Eine Normalmap hat ja X, Y, Z Koordinaten. Diese können jeweils positiv (X+,Y+,Z+) oder negativ (X-, Y-, Z-) sein. Da gibt es keinen programmübergreifenden Standard. 3ds max benutzt Normalmaps im Format X+, Y-, Z+

Um die Orientierung der Normalmap zu ändern musst du den jeweiligen Kanal (X = rot, Y = grün, Z = blau) invertieren. Das kann man zum Beispiel in Photoshop machen.

Substance verwendet soweit ich weiss X+ Y+ Z+ und dazu müsstest du bei deiner Normalmap also den Grünkanal invertieren. Es gibt auch Tools dafür (xnormal, ndo), die das ermöglichen.

In Substance Designer kann man bei Normalmaps wählen zwischen OpenGL und DirectX.
Das eine ist Y+ und das andere Y-. Ich weiss nicht obs das in Substance Painter auch gibt.


Edit:

Invertieren der Normalmap in Photoshop:

Strg + 4
Strg + I (das ist ein i)
Strg + S (zum speichern)



Its not a bug. Its a feature.
 
GastMi. 18 Feb. 2015, 14:37 Uhr
Danke Defragger für die Erklärungen aber in dem verlinktem Thread sieht man beim zweiten Bild sehr deutlich, das die Normalen geflippt sind, es hat also nicht nur was mit der Normalmap zu tun sondern auch mit der Ausrichtung der Normals.

Das die Normalmap dann geflippt es sobald man die Normalen umdreht ist halt ein Nebeneffekt den ich auch erlebt habe.

DirektX müsste eigentlich Y- sein, zumindest ist es so in XNormal bei mir eingestellt und die Normalmap passt ja soweit auch wie man bei meinem ersten Bild sehen kann.
Im Painter steht es auch auf DirektX nicht auf GL soweit ich weiß demnach passt das alles siehe OBJ.

Bei dem Verlinkten Thread hat er durch die Drehung der Normalen eine verkehrte Normalmap was aber wiederum durch das flippen von Y behoben werden konnte, das Problem mit den Materialien konnte man in dem Thread nicht sehen da er kein Material auf dem Char hatte, nur die Normalmap.

Wie man bei meinem dritten Bild sehen kann, sieht nach den flippen der Normals (Normal modifkator) mein Modell auch gut aus.. nur das Material kommt komisch rüber und die Normalmap ist auch geflippt.


Egal, ich teste erst mal die ganzen Infos obwohl ich einiges davon (ResetXForm und Normal Modifikator) ja schon ausprobiert habe.

Morgen werde ich dann vielleicht näheres sagen können.
 
 

 


 
 
© 3D-Ring - deutsche 3D Software Community, Archiv 2001 - 2006