Home Technical Talk

Maya duplicate special black faces

electricsauce
polycounter lvl 11
Offline / Send Message
electricsauce polycounter lvl 11
When I create an object in Maya, clear history, freeze transforms and then duplicate it across the x axis with duplicate special (scale x -1) I get an object with all black faces. The strange thing is that the normals are facing in the correct direction on the black model. If I export the model to UE4 everything renders fine.

The only solution that I have found is to enable two sided lighting but this makes it difficult for me to identify inverted normals quickly. Are the black faces a bug in Maya or am I doing something wrong?

Replies

  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12
    I've seen weird things happen in Viewport 2.0 that don't happen in default or high quality rendering. What version of Maya are you using and which viewport rendering mode?
  • huffer
    Options
    Offline / Send Message
    huffer interpolator
    Yeah, seems there's an inconsistency beetween the viewport renders when showing inverted faces. With 2.0 if you duplicate then combine the two objects the normals are reversed on the second one automatically, but if you reverse them before combining (both are ok now), they get reversed again after combining!
  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12
    Yeah what huffer said. One other thing, sometimes if I'm working in Viewport 2 I have to export and reimport a model to get the normals to match visually with the actual direction. It's annoying enough for me to avoid Viewport 2 unless I absolutely need it for very dense scenes.
  • electricsauce
    Options
    Offline / Send Message
    electricsauce polycounter lvl 11
    I'm using LT 2015 so I think viewport 2.0 is my only choice. I can turn on 2 sided lighting and backface culling and still model effectively, but I hate the feeling that there might be something fundamentally wrong with my model.

    On this tangent, is there an easy way to view all of the face normals for all of the objects in a scene, or do I have to switch them on individually?
    Thanks for the help.
  • throttlekitty
    Options
    Offline / Send Message
    The normals are fine, it's just a bug as far as I could find. It's kind of random, with a set of instanced meshes and reloading the scene, they won't all do it all the time. I've been applying another material and then back to the original as a workaround, deleting and re-mirroring doesn't seem to always work for me.

    I'm not near Maya right now, but I think in Display>Polygons you can set an always on normals display. If not, you can always select everything and switch it on and off as needed.
  • beefaroni
    Options
    Offline / Send Message
    beefaroni sublime tool
    Just freeze transforms when you duplicate special. Make a hotkey for it to save some time.
  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12
    If you want to display normals for a specific object only, you can use Display > Polygons > Face Normals or Vertex Normals

    If you want all future meshes to display your normals, you'll want to go to Window > Settings/Preferences > Preferences, go to Polygons category on the left, and check the Normals box in either the Vertices or Faces section. This option is not retroactive so you'll have to go back and toggle display on any pre-existing meshes using the first method.
    beefaroni wrote:
    Just freeze transforms when you duplicate special. Make a hotkey for it to save some time.

    I think the issue is in Viewport 2 if you have a -1 instance, the mesh appears inside out. If you flip normals it looks okay, but then if you export the model, your normals will be flipped. Also if you freeze transforms on something that was -1 scale, it will still appear inside out so you'll want to flip normals... But when you export or combine with another object, the normals are still flipped. It makes mirrored modeling in Viewport 2 really annoying.
  • beefaroni
    Options
    Offline / Send Message
    beefaroni sublime tool
    Bartalon wrote: »
    Also if you freeze transforms on something that was -1 scale, it will still appear inside out so you'll want to flip normals... But when you export or combine with another object, the normals are still flipped. It makes mirrored modeling in Viewport 2 really annoying.

    I've been doing it hundreds of times in Viewport 2.0. Freeze transforms fixes the problem 100%.

    Edit: Just to show that it works....

    1. Duplicate special. Model is black
    Kikw8SR.png

    2. Freeze transforms. Everything looks nice
    wsnjysF.png

    3. Combine. Normals are fine.
    s2tqpok.png
  • Bartalon
    Options
    Offline / Send Message
    Bartalon polycounter lvl 12
    Ah, I should have clarified. I'm not disagreeing that mirroring/freezing works for the final product, I do that often as well. I'm talking about using a mirrored instance while you are working in viewport 2, which doesn't work so well. Perhaps it depends on the version of Maya/GPU installed (I use 2013) but a black/inside out mirror is annoying to work with. The default or high quality modes do not produce these visual issues and find myself switching back every time I work with a mirrored model... It's too bad that Maya LT only has viewport 2, as it's lackluster handling of inverted objects makes me feel like it's not meant to be used while modeling. :(
  • pior
    Options
    Offline / Send Message
    pior grand marshal polycounter
    Heya - I was running into the same issue with LT as well. However, there is a way to still work with the active instanced copy updating itself in realtime and displayed properly! For that you need to enable 2-sided rendering in the viewport options.

    It's one step more than the older way of doing things, but it works.
  • electricsauce
    Options
    Offline / Send Message
    electricsauce polycounter lvl 11
    Freezing the transform on the duplicated object worked to fix the black faces. I had assumed that they were in some way directly related to the face normals independent of the scale. I was having some serious issues on a model that I had imported from Blender that had some black faces that I couldn't get rid of, so hopefully this will get rid of them.

    Thanks for the help everyone.
  • throttlekitty
    Options
    Offline / Send Message
    If it's only a few faces within the model, you may need to use Normals>Conform to fix any inverted face normals. IIRC Blender treats UVs outside 0-1 UV space as being inverted.
Sign In or Register to comment.