Subdivision Surface UV's incorrect
Status: Beta
Brought to you by:
render_man
It seems Pixie has problems with SDS UV coordinates in certain situations, here are some example pictures and a screen grab of the original UV:
UV screen grab - http://www.dreamscapearts.com/Public/UVscreengrab.jpg
3Delight result - http://www.dreamscapearts.com/Public/3delight.jpg
Aqsis result - http://www.dreamscapearts.com/Public/aqsis.jpg
Pixie result - http://www.dreamscapearts.com/Public/pixie.jpg
Also if it helps heres the test project files setup as SD S and Polygons with renders and screengrabs for comparison.
http://www.dreamscapearts.com/Public/UVTest.zip
I have no clue whats causing it but it appears that sometimes they are correct and sometimes they are not depending on the geometry?
Logged In: YES
user_id=1601629
Originator: YES
Forgot to mention I'm using Pixie v2.2.3 SVN Trunk v1147 on Linux ;)
Logged In: YES
user_id=954786
Originator: NO
Hi,
easy to fix, the mesh as degenerated faces, you can change theses lines in subdivisionCreator.cpp line 1912:
// Check for degenerate faces
int val = faces[i]->vertices[j]->valence;
int fval = faces[i]->vertices[j]->fvalence;
if((val == 1)) { warning(CODE_CONSISTENCY,"Subdivision mesh has hanging vertex"); goto skipFace; }
if((val == 2) && (fval != 1)) { warning(CODE_CONSISTENCY,"Subdivision mesh is degenerate (face %d)\n",i); k += faces[i]->numEdges; goto skipFace; }
if((val >= 3) && (fval > val)) { warning(CODE_CONSISTENCY,"Subdivision mesh is degenerate (face %d)\n",i); k += faces[i]->numEdges; goto skipFace; }
Cheers.