New issue 263 by tus...@gmail.com: Maya importer produces 'UVs aren't
per-vertex or per-polygon per-vertex, skipping' warnings for geometry
exported from Maya
http://code.google.com/p/alembic/issues/detail?id=263
What steps will reproduce the problem?
1. Export from Maya as .abc
2. Import back
(Doesn't always happen -- I'll try to reduce geometry in such a scene then
send along as attachment.)
Using alembic 1.0.3, both on Linux and Windows.
Comment #1 on issue 263 by miller.lucas: Maya importer produces 'UVs aren't
per-vertex or per-polygon per-vertex, skipping' warnings for geometry
exported from Maya
http://code.google.com/p/alembic/issues/detail?id=263
(No comment was entered for this change.)
I have also noticed this issue. At first I thought it was related to the
number of vertices because as I increased the number of verts I could
replicate this behavior more consistently. However, I have a test case
where this happens on one frame sample and not another and yet the failing
frame has less points than the one that works.
Using Alembic 1.0.5
Also, I can confirm the UVs for this mesh are not broken on export by
viewing the resulting ABC in Katana, seems to be an issue with the Maya
AbcImport
Do you have a simple example that you can share?
Not right now, but we run into this from time to time. I'll send an example
next time we bump into it.
imre
Comment #6 on issue 263 by miller.lucas: Maya importer produces 'UVs aren't
per-vertex or per-polygon per-vertex, skipping' warnings for geometry
exported from Maya
http://code.google.com/p/alembic/issues/detail?id=263
I found a case where this is happening and it's a bug in AbcExport.
In Maya some of the faces may not have UVs, while AbcExport is assuming
that it has face varying UVs for ALL the faces.
Jonathan, when you say you are viewing the ABC in Katana, are you at the
UVs in the UV viewer, or are you looking at the SceneGraph Attr?
I'm looking at the UVs in the UV Viewer. My data isn't coming from the
Maya AbcExport, it's actually coming from Houdini12 so I really think it's
a problem with AbcImport.
I modified AbcImport to ignore the check it's doing when it prints this
message and instead use the data as per-vertex UV data and the result seems
ok in the Maya UV editor and in renders. As a diagnostic I printed out the
indexPtr size() and the numFaceVertices and numVertices and noticed that
numVertices was always less than the indexPtr size by 7 (I don't have it in
front of me but I think that's the difference) so perhaps indexPtr size
isn't accurate? Is that the size in allocated memory?
Having more UVs than you have face varying vertices for could be
problematic, especially if the extra data isn't packed at the end.
Katana's UV Viewer is more tolerant of mismatches in
expected "geometry.arbitrary" attributes (the destination of
AbcGeom::GeomParam data) than the rest of the system is. My guess is that
it'll log a warning and omit the data when you write it out to a renderer.
In my opinion, that's a problem with the data.
Hmmm will the Attribute viewer in Katana be accurate to what data is in
the abc or will that throw out the mismatched data? Because for both good
and bad frames of geometry I always see the proper relationship in size of
1:2 verts:st values.
The Attributes tab in Katana will show you the data as present (valid or
not). I'm probably jumping into this thread without enough information. If
you've got some representative data you can share, I'll take a look.
[Restated and only possibly relevant truths:
1) Katana's Alembic_In doesn't do validation of GeomParam footprint on read.
2) The Attributes you see in that tab will reflect the data as advertised
in the alembic archive.
3) Katana's render output modules validate the footprint
of "geometry.arbitrary" attributes against the mesh and will exclude
anything that doesn't match exactly.
4)Katana's UV Viewer tab is tolerant of mismatches if it's more data rather
than less.]
Comment #12 on issue 263 by miller.lucas: Maya importer produces 'UVs
aren't per-vertex or per-polygon per-vertex, skipping' warnings for
geometry exported from Maya
http://code.google.com/p/alembic/issues/detail?id=263
The AbcExport fix is here:
http://code.google.com/r/millerlucas-dev/source/detail?r=3678ea403483033363f3077874525f4cfde127c8
Hi Steve. Yeah, I was pretty sure that was the behavior for Alembic_In so
I was confused when I saw what I think is a proper number of st values
compared to verts in Katana
Lucas, I'm attaching an example abc that I believe exhibits the problem.
If you look at frame 6 you should see the problem crop up, but inspecting
the same abc in Katana there is a valid number of uv's per vert. (8876/4438)
Thanks
Attachments:
uvTest.abc 1.9 MB
At frame 6 when Maya is setting the UVs it thinks that there are only 4431
face varying vertices.
Maya may be dropping some of these face varying vertices if they are
degenerate.
Sorry for the delay in coming back to you. But yes, that seemed to be the
issue. I cleaned up the geometry and got the expected result and the
correct number of vertices into Maya. Thanks much