Hard edges from Maya to Softimage

247 views
Skip to first unread message

Martin Yara

unread,
Apr 11, 2015, 6:31:28 AM4/11/15
to soft...@listproc.autodesk.com
Hi list,
Is there any way to export hard edges from Maya to Softimage as hard edges (not normal clusters) ?
I though about getting a list of edges from Maya, but when I import the data in Softimage the edge numbers change and differs from Maya. Vertex indexes are the same though.

Or better, is there any way to convert those normal clusters to hard edges?

I have to convert character scene files from Maya to Softimage and right now I'm redoing all the hard edges in Softimage and it is quite time consuming.

Thanks

Martin

Matt Lind

unread,
Apr 11, 2015, 6:47:19 PM4/11/15
to soft...@listproc.autodesk.com
Technically speaking, hard edges is just a special case of normal cluster
where the specific normals associated with the edges are not smoothed via
smoothing/discontinuity/etc... They are left in their original raw state
(perpendicular to surface). You do not need to create "hard edges" to have
the same end result of faceted edges on the mesh. You only need to know
which normals in the normal cluster should be interpolated vs. not.

Normals live on samples (or 'polygon nodes' for the specific case of polygon
meshes), which are the original unshared vertices of the mesh. If you want
to preserve hard edges coming from Maya, you'll need to keep track of the
sample indices and make sure they don't change during the transition. If
the samples change order, then your backup plan is to record the vertex
index and polygon index together in Maya and pass that along as metadata to
Softimage as that'll be needed to identify which sample on a vertex should
be flagged for hard edges (because each vertex in Softimage has multiple
samples).

If polygon indices change too, then the only brute force method available is
to unshared all the edges of the mesh in Maya to force the vertices to be
unique so when you get them over to Softimage it'll be easy to identify and
flag...but of course unsharing on it's own will force hard edges on all the
unshared edges so in some ways will defeat the purpose.

An alternate non brute force method (if all the indices keep shifting
around) is to apply a vertex color property or UVW texture projection and
record the edge flags there, then have a plugin in Softimage read that data
and apply the hard edges. A little clunky, but perfectly functional as I'm
pretty sure vertex colors and texture UVW coordinates are properly
converted.

Matt







Date: Sat, 11 Apr 2015 19:31:06 +0900
From: Martin Yara <furi...@gmail.com>
Subject: Hard edges from Maya to Softimage
To: "soft...@listproc.autodesk.com"
<soft...@listproc.autodesk.com>

Tim Leydecker

unread,
Apr 12, 2015, 4:17:46 AM4/12/15
to soft...@listproc.autodesk.com
Maybe I don´t get the question properly but for the following, it seems
to work:

In Maya, create Polysphere, select some edges, go to Normals>Harden Edge

Export the sphere using *.fbx, in the *.fbx export options under
Geometry, make
sure that "Smoothing Groups" is ticked on and Tangents and Binormals is
on, too.

IIRC, in the *.fbx export options, those setting can sometimes be ticked
off from a preset.

In Softimage, go to File>Import>Import FBX...

In my little test using Maya 2014/Softimage2014 and *.fbx plug-in
version 2014.1 (release 214447),
the sphere came in fine into Softimage, showing the hard edge rings
created in Maya correctly.


Cheers,

tim

Martin

unread,
Apr 12, 2015, 5:09:59 AM4/12/15
to soft...@listproc.autodesk.com
I only get a normal cluster, so visually it is the same but the edges are not marked (no blue edges).

I'll try different options and FBX versions just in case. Maybe something had changed in newer versions.

Although it is visually the same, the problem with this normal cluster is that it is very fragile if you need to change topology and do some other things after that. Also any script reading hard edges won't work. Also you can't add hard edges because this cluster overrides everything. I'm not sure how much this could affect the output to a game data format but the biggest problem is that my client just won't accept a normal cluster instead normal hard edges.

The easiest solution I found was to disconnect hard edges in Maya, and in SI, select border edges, mark them as hard and merge. Easily scriptable. Not quite the same but close enough.

The problem is when I don't have the original Maya data and only have an FBX and/or a SI data with user normal cluster. I though it wouldn't be that hard to convert somehow that cluster to edges, but it seems it is.

Martin
Sent from my iPhone

Tim Leydecker

unread,
Apr 12, 2015, 5:34:14 AM4/12/15
to soft...@listproc.autodesk.com
In the Softimage FBX import options, there is a checkbox under "Include":

Hard Edges - that´s off by default, you want this on.

I´m setting this to on and then I get a MarkHardEdge/Vertex op
floating in the Modeling Stack on import of the *.fbx

Those egdes are indentical to what I selected as Hard edges in Maya and
they show up blue as one would expect inside Softimage.

Unless you had triangulate on while exporting from Maya, that´ll create
extra
hardened edges, due to the triangulate option doing it´s thing.

Unreal4engine would like to have Tri´s for import of *.fbx files but in
terms
of full control, it´s not adviseable to have *.fbx decide on triangulation.

It´s better to do that manually based on the desired result and have *.fbx
not triangulate automatically, which can lead to unwanted shading errors.

For best I/O between Softimage and Maya, autotriangulation should definitely
be off.


Cheers,


tim

Martin Yara

unread,
Apr 13, 2015, 5:59:04 AM4/13/15
to soft...@listproc.autodesk.com
It worked ! Thanks! 

It was the "Smoothing Groups" in Maya, it wasn't checked.

I still wish there was a way to convert that normal cluster though :P

Martin

Tim Leydecker

unread,
Apr 13, 2015, 7:12:40 AM4/13/15
to soft...@listproc.autodesk.com
I don´t know about converting normal clusters because I can´t really
see what you´d want to convert them to?

In general, they are useful to assing different materials or is it because
of the clusters that you have problems using the mesh in Quixel Suite
or Substance Designer because each cluster will generate a separate
material there, even if that cluster was just meant for hard eges?

Afaik, the clusters are needed inside softimage, you´d want that cluster
to be able to select the hardened edges inside softimage, using RMB
"select components".

When facing problems with meshes generating multiple material entries
inside Substance Designer/Painter, I like to resort to exporting an *.obj
file, making sure I have only the actual UVset I need as "map1" merging
all elements into a new mesh I want to have share one texture set.

If that fails, I delete the *.mtl file that´ll be generated along with the *.obj.

If I can, I´ll also assign the default lambert Maya material, especially when
I want to salvage stuff from an existing Substance Tree.

In a nutshell, I´ll try to do *.obj exports from Maya, avoiding Softimage Clusters.

tim

P.S: When I´m refering to *.fbx in a 2014 build version, it´s because that´s what a
Unreal Engine 4 expects to get, afaik they don´t support the fbx 2015 fully officially.

Martin Yara

unread,
Apr 13, 2015, 11:46:05 PM4/13/15
to soft...@listproc.autodesk.com
I wanted to convert normal clusters because sometimes I don't have the original Maya file, but that's ok. I'll just have to get the Maya file or make them use Smoothing Groups in the FBX export options in the future.

About clusters, I always freeze and delete all clusters. I work mainly in game assets production so I try to keep my final data as clean as possible to avoid any possible export problem. I never keep points or edge clusters (the only point cluster is the envelope one), lattice or any deformer besides envelope.

If you keep adding hard edges you'll end up with tons of edge clusters. That's why I wrote something to automatically freeze Mark Edges op and delete the edge cluster.

You don't really need clusters at all for hard edges. Just freeze and delete the cluster. The same for any other deformer that you don't need to be alive.

Softimage should have a clean cluster option. Any studio that I've been or work with uses a custom tool for that.

You can easily script something for hard edges selections with ICEAttributes if you need, or you can use crease filter selection because hard edges in Softimage are also creased by default.

I don't have much experience with Substance so I can't say anything about it.

cheers,

Martin

Tim Leydecker

unread,
Apr 14, 2015, 1:25:41 AM4/14/15
to soft...@listproc.autodesk.com
Hi Martin,

thanks for the info.

I had only checked for the case of getting hard edges from Maya into Softimage
and keeping those edges selectible and displayed blue, I didn´t check for what
successively setting egdes to hard would do to a mesh´s clusters.

Good to know.

Last time I had to deliver Softimage files directly, I´d manually tidy up (along the
lines you describe for clean final data). That´s a while ago.

Regarding Substance Designer&Painter, I use it for it´s mask generators mostly.
Typical scratched metal blended materials masks, a dirt&dust pass over clean materials,
that kind of thing. It´s pretty good at that and beats having no masks due to time/task anyway...


Cheers,

tim
Reply all
Reply to author
Forward
0 new messages