Home Technical Talk

Triangule the cage, but why?

polycounter lvl 12
Offline / Send Message
daniellooartist polycounter lvl 12
I started a thread that keeped me up for half the night. Prior to the beginning of this month, xNormal keeped giving me errors such as "vertex count differ" after Maya's HUD said they were the exact same. It would work fine 1 minute and tell me the "topology changed" after moving 3 vert 0.2in the x direction.

A user on this forum said that I had to triangulate the cage. After asking him why, it "was 'just' what we do." As long as it worked it should not matter why it works right? honestly it's been bothering me ever since.

Why does this make low poly meshes less error prone? This should defy all logic since all quads are triangles anyways. Yet since then I have never had xNormal problem at all. Not a single one. I have believed the triangulate function actually cast some anomalous voodoo magic that protects it from xNormal curses but I think any rational person would disagree. So why does triangulating a cage work so much better than an un-triangulated cage that's just a bunch of triangles anyways?

Replies

  • ghaztehschmexeh
    Because when you load it into xNormal, xNormal will triangulate anything which isn't triangulated. If you move verts around on your cage, the triangulation algorithm might result in your mesh and your cage having verts connected in different ways. You should triangulate your mesh before you make your cage so that when you move verts around, the verts are all connected in the same way.

    Hope this makes sense.
  • Mark Dygert
    Short answer: Triangle Striping.


    Longer-ish answer:
    Invisible edges can flow any which way when models are exported/imported. It's up to the ex/importer and the application to define how they flow. If you triangulate, it doesn't give them the option to flip.

    Slightly more detail:
    https://www.google.com/search?q=triangle+flow+quads&rlz=1C1CHFX_enUS578US578&espv=2&biw=1280&bih=939&source=lnms&sa=X&ei=fUhKVcDJH8vUsAWc2IDADQ&ved=0CAUQ_AUoAA&dpr=1#q=triangle+striping

    All quads are made up of triangles true, but not all invisible triangles flow the same way. Invisible edges in a quad or an ngon, is basically giving a lot of applications permission to flow the hidden edges however they want.

    It's a little curious that you're working in Maya and it's having a problem with triangulation. Maya forces hidden edges to flow one particular way and the only way to force it to flow the other way is to triangulate it and define the flow with visible edges. Which is annoying...

    Max users run into it all the time because it lets you flip hidden edges any way you want without triangulating, which is nice because you can continue to work in quads and meshes can be PERFECTLY symmetrical. The left side of the body will deform EXACTLY like the right, not so with Maya. It tri-strips from bottom left to upper right so some faces might fold oddly. BUT in 3dsmax you really should triangulate otherwise it gets re-striped.

    If you're moving the cage verts around in xnormal it's probably changing the flow. If it was triangluated, it wouldn't leave it up to xnormal to define.
  • daniellooartist
    Offline / Send Message
    daniellooartist polycounter lvl 12
    Holy cow! I would have never guessed. Thanks guys.
  • poopipe
    Offline / Send Message
    poopipe grand marshal polycounter
    Not really xnormal related but..

    A turn to poly modifier set to force convex faces generally deals with this if you dont want triangle output (eg. If you're going to maya using fbx)
Sign In or Register to comment.