Why does this mesh split on one edge with Smooth Polys (PP2014)



  • If I import this OBJ into PP2014 (all checkboxes cleared) and render with Smooth Polys the cube splits open along just one of the outer vertical edges.

    Same thing happens with Poser 9 and Poser 6

    • Can anybody else reproduce the problem?
    • Does it happen in Poser 11?
    • Can anybody explain why Poser is screwing with my head like this? :D (I was investigating refraction and getting some weird warping that made no sense at all - then I noticed this)

    v 0.000000 0.250000 -0.353553
    v 0.353553 0.250000 0.000000
    v 0.000000 0.250000 0.353553
    v -0.353553 0.250000 0.000000
    v -0.353553 0.750000 0.000000
    v 0.000000 0.750000 0.353553
    v 0.000000 0.750000 0.318198
    v -0.318198 0.750000 0.000000
    v 0.000000 0.750000 -0.353553
    v 0.353553 0.750000 0.000000
    v 0.000000 0.750000 -0.318198
    v 0.318198 0.750000 0.000000
    v -0.318198 0.275000 0.000000
    v 0.000000 0.275000 -0.318198
    v 0.318198 0.275000 0.000000
    v 0.000000 0.275000 0.318198
    f 1 2 3 4
    f 5 6 7 8
    f 1 9 10 2
    f 2 10 6 3
    f 3 6 5 4
    f 9 1 4 5
    f 9 5 8 11
    f 6 10 12 7
    f 10 9 11 12
    f 11 8 13 14
    f 7 12 15 16
    f 12 11 14 15
    f 8 7 16 13
    f 14 13 16 15

    0_1475730364319_headscrew.jpg


  • Poser Ambassadors

    Loading your OBJ data into 2014 Pro Game Dev v10.0.5.28925, I don't see that problem. I don't see it either in Poser Pro 11. Maybe it's a render setting issue?


  • Poser Ambassadors

    Ups, was too fast there as I didn't turn the box. Yes I see it know. In both apps! Can be fixed though by turning off smooth polys for the object.



  • Try moving the second F line f 5 6 7 8 to just after the 6th F line f 9 1 4 5. Save your object and reimport it into poser. Using your object as listed I also got the split, however after grouping the types of faces together it got rid of the split. Below is my version of your object.

    v 0.000000 0.250000 -0.353553
    v 0.353553 0.250000 0.000000
    v 0.000000 0.250000 0.353553
    v -0.353553 0.250000 0.000000
    v -0.353553 0.750000 0.000000
    v 0.000000 0.750000 0.353553
    v 0.000000 0.750000 0.318198
    v -0.318198 0.750000 0.000000
    v 0.000000 0.750000 -0.353553
    v 0.353553 0.750000 0.000000
    v 0.000000 0.750000 -0.318198
    v 0.318198 0.750000 0.000000
    v -0.318198 0.275000 0.000000
    v 0.000000 0.275000 -0.318198
    v 0.318198 0.275000 0.000000
    v 0.000000 0.275000 0.318198
    f 1 2 3 4
    f 1 9 10 2
    f 2 10 6 3
    f 3 6 5 4
    f 9 1 4 5
    f 5 6 7 8
    f 9 5 8 11
    f 6 10 12 7
    f 10 9 11 12
    f 11 8 13 14
    f 7 12 15 16
    f 12 11 14 15
    f 8 7 16 13
    f 14 13 16 15

    Your object has the faces as follows: L = left R = Right B = Back F = Front O = Outside I = Inside U = Underside T = Top
    U O
    LF T
    RR O
    RF O
    LF O
    LR O
    LR T
    RF T
    RR T
    LR I
    RF I
    RR I
    LF I
    U I

    Not sure why it fixed the problem, but putting the like faces together fixed it on my system.



  • 0_1475791639958_Split box.png

    Left box is your mesh and the other two mine with the fix in place. The brown one is moving all 4 of the outside faces to the end of the face list. The yellow/green one is just moving the one top face to the beginning of the top face group.



  • @Batman: Thanks. Since the problem also occurs in Poser 11 there's a vague chance that SM might try to fix it, if it's reported* (assuming of course that it is actually a Poser problem, and not an error in the OBJ file). I haven't tried richard60's workaround yet, but I think that my original OBJ is still a perfecttly valid OBJ file. My concern is that if Poser has this problem with such a simple OBJ, what about more complex ones?

    It's definitely a smoothing issue, so turning off smoothing for the cube would avoid it. But the problem's still there - it's just waiting till you re-enable smoothing !

    *I was told when I last reported a bug that they only fix the latest version. I don't have Poser 11 - so for me officially reporting bugs is too much hassle for zero result! ;o)



  • @richard60: Thanks, I tried your amended OBJ and that works fine.

    Looks like Poser's getting something screwed up when it imports my version, but not when it imports yours. I'd guess it's something to do with smoothing groups? Maybe saving the imported OBJs as PP2s and checking the geometry would tell me what's going on - off to do that now...



  • Nothing obvious in the PP2 files. I saved each OBJ (my original and richard60's fix) as a separate PP2, restarted PP2014, loaded both PP2s, and rendered with Smooth Polys. My version still has the problem, richard60's one doesn't.

    I opened both PP2s in WinMerge to compare. Nothing in there that would explain it. All faces in both PP2s are as per the relevant OBJ. All faces are assigned to smoothing group 0 by a single "s 0" line between the last vertex line and first face line in the customGeom section. Other than that the only differences are the prop/actor name, some diffuse/specular colour values, toon ID, and the xTrans value (I saved them when they were side by side).

    So it looks like something wrong inside Poser. And it's been there since at least Poser 6.

    Anybody want to report it as a Poser bug ?



  • could it be that some of the face normals are not oriented in the same direction as the others, which means needing to get into a modelling program and checking that



  • @ibr_remote: Thanks for the suggestion. Checking the normals is something I always do - but I still get it wrong, so it's always worth re-checking. All the normals look fine in Blender. Also, I didn't save the normals to the OBJ, so Poser will calculate them on import from the winding direction of each individual face. Since Poser doesn't show back-facing polys in the preview a quick check in the preview pane while rotating the camera satisfied me that all the normals were facing in the correct directions. The fact that richard60s fix just involved moving a face line also seems to indicate that the normals are all correct.



  • It's nothing to do with the "Weld identical vertices" option when importing an OBJ either. I just imported my OBJ with and without the weld option checked.

    0_1475827877782_weld.jpg



  • what happens to your box if you use subdivision instead of smoothing? You can specify on a per item basis what uses smoothing and what uses subdivision.



  • @ghostship: It turns into a bowl ! And none of the edges burst open when I render, even if I also use Smooth Polys.
    0_1475849788323_bowl.jpg



  • I played with it some more last night, before my computer updated itself, and found that as long as the face #2 is after face #6 then the problem does not show ETA or they are in like groups. Also I started to move the one out of place Top face down the list one by one (f5 6 7 8), once it got past the face that pops open (f3 6 5 4) it stopped opening up. At that point my computer updated itself and I quit for the night. I need to do more tests, however I thought to put each top face in front of an outside face and that did not cause any more then the one "bad" face to open up. One of the reasons I found the out of place face is that I looked at each piece and verified that the winding order is correct so all the faces are correctly constructed. The only thing the bad object has is that the face that pops shares the top two vertices as the out of place top face. I will have to try moving another top face into position #2 and see if that causes the corresponding face to pop.



  • 0_1475855331767_popBoxes1.png
    More Tests. Upper Left is the original bad box. Top Center is adding two Top (left side) faces to before the Outside. Top Right is reversing the order of the two Top faces moved in the center image. No change. Lower Left is moving the Top Face (Left Front) to after the Outside faces. Bottom Center is turned to show the pop and it has only three Top faces in front of the Outside faces. The pop occurs on face on the last Top face in the list, however it does not do the same thing as shown in the two above. The lower Right image shows all 4 Tops in front of the Outsides and there is no pop. And if I place all the Tops after the Outsides no pop.



  • New tests and files to look at.
    0_1475873752736_Titledboxes.png
    0_1475873822576_TestBoxEX.zip.txt
    Remove the .txt at the end and you will have all the object files that created these images. Each name starts TestBox and then the ending is listed under each image of the box.

    TestBox is the original box that 3dcheapskate uploaded, with #comments above each face to tell which one they are referring too.
    TestBoxob4T is the same file with the Top Left Front face placed just below the Outside Left Front Face.
    Notice the Original has the pop and the modified one does not.

    TestBoxLRTb4LRO takes the TestBoxob4T object and moves the Left Rear Top face to in front of the Left Rear Outside face. You can see the pop out has moved to the back face.

    TestBoxLTb4LO takes both Top faces on the left side and places them before the Left Outside faces. They do not have the pop out.

    TestBos3Tb43O has 3 Tops before there 3 Outsides and we get a pop out on the Right Front Face. You can see the slight curve on the right hand side.

    TestBox4Tb44O places each Top face in front of each Outside Face and again we have no pop out.

    There are a lot more tests that could be run, but I don't know to what end. I find it weird that I can place the face types into groups and they do not pop out. Also if all the Tops are placed in front of each of their Outside faces they do not pop out. It only appears to pop out if an odd number of Tops are before Outsides, and even then not sure what determines which face will pop out. If there is only one then it makes some sense as you kind of know what face will pop. But the 3 faces, just tried to reorder the faces in the object file and it did not change which face popped out.

    Once I get home to a computer where I can log a bug report I will submit it.



  • I believe the solution is to retopo the object if this must be smoothed. Otherwise disabling smoothing on the props properties in Poser.
    Why? It is my experience Poser and other applications break face welds when you try to smooth something that cannot be further sub-divided. Also excessive smoothing will break welds on any grouped object when you exceed the crease angle of the render engine.



  • @dreamcutter: The problem's not specifically this mesh. I'm creating a number of angular meshes that are intended to be rendered with Smooth Polys to give them nice realistic edges, using bevels and control edges to control how tight the rounding is (e.g. my goblin enamel). If this problem occurs with such a simple mesh as this one, then it's a far bigger problem - how can I rely on the smoothing working with more complex meshes ?

    @richard60: Changing where the popout occurs by moving face lines got me thinking - what's the minimum mesh to cause this? I've got it down to 9 vertices/4 faces...

    v 0.353553 0.250000 0.000000
    v 0.000000 0.250000 0.353553
    v -0.353553 0.250000 0.000000
    v -0.353553 0.750000 0.000000
    v 0.000000 0.750000 0.353553
    v 0.000000 0.750000 0.318198
    v -0.318198 0.750000 0.000000
    v 0.353553 0.750000 0.000000
    v 0.318198 0.750000 0.000000
    f 4 5 6 7
    f 1 8 5 2
    f 2 5 4 3
    f 5 8 9 6

    0_1475925226947_4faces.jpg



  • Spoke too soon - 8 vertices/3 faces !

    v 0.353553 0.250000 0.000000
    v 0.000000 0.250000 0.353553
    v -0.353553 0.250000 0.000000
    v -0.353553 0.750000 0.000000
    v 0.000000 0.750000 0.353553
    v 0.000000 0.750000 0.318198
    v 0.353553 0.750000 0.000000
    v 0.318198 0.750000 0.000000
    f 1 7 5 2
    f 2 5 4 3
    f 5 7 8 6

    0_1475926137675_3faces.jpg

    Move the first face (f 1 7 5 2) to the end and the mesh renders as it should. I think the Poser techies should be able to work out what's causing it from that !



  • LOL...did I say 3 faces ?

    How about 7 vertices / 2 faces ?

    v 0.000000 0.250000 0.353553
    v -0.353553 0.250000 0.000000
    v -0.353553 0.750000 0.000000
    v 0.000000 0.750000 0.353553
    v 0.000000 0.750000 0.318198
    v 0.353553 0.750000 0.000000
    v 0.318198 0.750000 0.000000
    f 1 4 3 2
    f 4 6 7 5

    0_1475928037321_2faces.jpg

    N.B. swapping the order of the faces doesn't fix it this time.


Log in to reply
 

Looks like your connection to Graphics Forum was lost, please wait while we try to reconnect.