Home Quixel Megascans

Answered: Imported mesh displaying forcibly smoothed surface normals.

The Conundrical Preposter
polycounter lvl 5
Offline / Send Message
The Conundrical Preposter polycounter lvl 5
I'm working on a mesh with several pieces that doesn't seem to import correctly. I've had no trouble with numerous other meshes along the way and haven't adjusted my export settings at all. The meshes naturally require their original surface normals to display correctly, yet I'm unable to bring the full mesh in without losing them. Strangely, importing the meshes individually correctly loads those surface normals.

I tried exporting a triangulated version. Initially I thought I might have been experiencing different triangulation algorithms between Maya and 3DO.

I tried combining the models prior to export to in some way align the group names or something.

The model imports correctly into Maya, Modo, and into Marmoset Toolbag. Manually importing it into 3DO through the import tab doesn't fix it.

I tried making a new project without any pre-baked files just to check and the mesh still gets soft normals.

PS: I actually just figured out part of the problem but still wanted to see what sort of explanations I could get. I noticed that one particular mesh imported smoothed even when loaded in isolation. After exporting all of the other pieces as a group without that single piece, the full mesh loads correctly. Apparently if 3DO is unable to find correct surface normals for part of the mesh, it ignores them for all of the mesh. Both Maya or Toolbag seem to display that broken piece correctly whether imported alone or together with the full model.

Edit: Exporting the same mesh out of Modo did not solve the problem. Exporting the same mesh out of Marmoset Toolbag DID solve it. I have no idea what part of the file is being dropped in and out or why 3DO is the only program that notices.

Replies

  • Synaesthesia
    Offline / Send Message
    Synaesthesia polycounter
    3DO is Unity. If Unity detects that there's no smoothing in the 3DO scene, it will basically just assign whatever it thinks is best to the model. I'm not sure why you're experiencing this as I don't use Maya at all, but import issues to seem to most commonly center around Maya - possibly because its export options are a bit limited compared to other programs. OBJ export choices in Maya are painfully limited compared to Max, as an example.

    What happens if you toss it out as FBX instead?
  • The Conundrical Preposter
    Offline / Send Message
    The Conundrical Preposter polycounter lvl 5
    I actually sort of prefer OBJs for asset work because they strip away all excess data that might get caught up in an FBX. Shaders, groups, cameras, lights, animations, etc. sometimes come along for the ride and can even make files unusable in other programs that can't handle various data types. One format is predictably restricted, the other is unpredictably robust. I have no idea what Max's options look like unfortunately as I was raised on Maya.

    DDO errors when I load it as an FBX:

    "Assimp.AssimpException: Error importing file: FBX-Tokenize (offset Dx34) block offset is out of range."


    As to Unity, I haven't started using it often enough to be familiar but I do have it, though. After loading it and making a new project, I see no errors loading any of my meshes including the specific piece that was giving me problems.

    I have a feeling there's some sort of pointer missing in the file that 3DO requires to identify and align surface normals. The main reason I say that is because Marmoset Toolbag exported the file that had previously been exported from Maya, meaning that no new data was introduced. The only thing Toolbag could have done is to translate from Maya's file writing behavior to its own file writing behavior. Kind of like unscrambling a code: both messages are identical but only one is arranged to be read. Maybe like a minor corruption attached to the file?

    Modo, Unity, Toolbag, and Maya all read the file correctly. 3DO does not.

    Toolbag's re-exported version is twice as large as the original. Modo's re-export was a little more than half the size of the original.
  • Synaesthesia
    Offline / Send Message
    Synaesthesia polycounter
    Try using FBX 2013 instead and let me know how that works. :)
  • The Conundrical Preposter
    Offline / Send Message
    The Conundrical Preposter polycounter lvl 5
    FBX 2013 loads without throwing an error but doesn't appear at all in the 3DO window. I tried triangulating it and exporting just a single piece and neither show up.
  • Synaesthesia
    Offline / Send Message
    Synaesthesia polycounter
    Something might be off in your scene setup, then. Try taking everything out of any hierarchy you've got set up and combine all assets into a single object per UV set, then export as OBJ or FBX, or both, and try that out!
  • The Conundrical Preposter
    Offline / Send Message
    The Conundrical Preposter polycounter lvl 5
    I'd already tried combining them as a single object prior to export (as opposed to exporting a selection of multiple meshes) to see if that worked but nothing changed. I thought it might be the same issue since the suite needs to be able to align its texture files very explicitly to the mesh.

    I do have the model working now, as I mentioned, thanks to whatever Toolbag did when I re-exported the same file. At this point, you're welcome to set this one aside unless its a bug you'd like to personally track to the bitter end. If that's the case, I'll take a few minutes to see if I can't put together a package with files to poke around. The nice thing about OBJs is that there really isn't supposed to be much in there at all so a glance at its contents might reveal what's wrong to anyone experienced with those sorts of things (obviously not me!).

    Thanks for the suggestions on this one. Trying one of everything is still the best temporary problem-solving method available even if it doesn't give any insight to the cause.
  • Synaesthesia
    Offline / Send Message
    Synaesthesia polycounter
    No worries, I totally get it. Let's try this: 

    https://www.youtube.com/watch?v=742Pa2foxE0

    Does this video help at all?
Sign In or Register to comment.