Digital Art Zone

 
   
1 of 3
1
Hexagon crashing when selecting faces
Posted: 05 June 2012 02:25 PM   [ Ignore ]
Member
Rank
Total Posts:  250
Joined  2009-01-27

Hold on a goddamned minute. This site SUCKS when it comes to posting images!!!
The damned page REFUSES to load images in order, and it REFUSES to post images inline with text!!
WORKAROUND: All my images are at the bottom of the page. I’m going to edit my post to point to the proper image which will be out-of-place in the list.

>rant off< My original attempted post continues below:
 
This would probably better serve as a “bug report”, but I’ll post it here for general information.
 
There is a fairly common problem here where Hexagon users have complained of crashing when they try to select faces on their meshes, and takes nothing more than a mouseover to do it.
 
A user here, Roygee, had that problem with one of his meshes, but was able to “fix” it by sending his model to DS and resaving the mesh from there. Luckily, he kept both the “bad” version of his model along with the “fixed” version, and he was kind enough to share them with me so I could examine them.
 
The first thing I noticed was that they both had 332 vertices, but the “bad” model only had 320 faces while the “fixed” version had 328.
 
After a line-by-line comparison I found the difference laid in 4 areas of his meshes, each of which was a 5-sided n-gon in the “bad” mesh, but the same areas had been converted to 3 triangles in the “fixed” version. Each area in the “bad” verison were 5 vertices filled by a single ngon, for a total of 20 vertices and 4 faces. Each area in the “fixed” version were the same 5 vertices filled by 3 triangles for a total of 20 vertices and 12 faces - which is where the difference of 8 faces came from.
 
Now Hexagon normally has no problems with ngons, so I figured that something else was going on and looked further to find out why Hexagon doesn’t like THESE ngons. I believe I’ve found the answer, and it turns out that only 2 of the 4 ngons were responsible for crashing hex.
 
The problem isn’t ngons; the problem is TWISTED ngons. To complicate matters, you can twist ngons all day long in your models without breaking Hexagon…UNTIL you SAVE them to a file and subsequently try reloading them!
 
Hexagon preserves the winding order of the “twisted” ngon vertices just fine and imports that data with no problem, but then it goes completely braindead when it tries to FACET the twisted vertices! It screws it up so badly that it crashes when you try to select these faces.
 
Allow me to demonstrate how to crash Hexagon with a twisted ngon:
 
Bring up Hexagon and imagine 5 points defining a 5-sided ngon in your workspace.
 
## See first image
 
Using the “facet” tool under the “3D Primitives” tab, create an ngon by connecting these points starting at “1”, then “2”, “3”, “4”, “5”, then “validate”, which closes the 5-sided ngon. BTW, to define a previous term I used, “1,2,3,4,5” is this polygon’s “winding order”.
 
## See 2nd image
 
Now let’s “twist” it. Grab vertex #5 and drag it down below vertex #4:
 
## See FOURTH image
 
Note that we have no evident problems yet. You can still select its face and it acts like any other poly in the pack. If this were part of a larger model, you may not even be aware that some operation had twisted an ngon, and you might go off working on other areas before calling it for the night and saving your model.
 
So let’s go ahead and do that now, and save our little single-faced model as “bozo.obj”.
 
Come morning, and we’re all set to do more work on bozo. So now go ahead and open “bozo.obj” back into Hexagon again:
 
## See THIRD image
 
With this single ngon, the difference in face configuration between what we saved and what we re-opened is glaring. But if it were part of a larger model, it may not be noticed at all among the crowd of polygons. In Roygee’s model, these faces were even partially hidden behind other polys.
 
But the damage is done. One twisted ngon affects the entire mesh group, and when you select “face mode” and mouse over the affected goup, you’re greeted with:
 
## See 5th image
 
So that appears to be the problem. Unfortunately, I have no better solution than Roygee’s solution of sending a broken mesh to DS and resaving, which apparently automatically triangulates any polys larger than quads.
 
BTW, just to add insult to injury, Hexagon also crashes if you try to triangulate the above broken mesh. Go figure…  grin
 

Image Attachments
x1.jpg
x2.jpg
x3.jpg
x4.jpg
x5.jpg
 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 02:31 PM   [ Ignore ]   [ # 1 ]
Administrator
Avatar
RankRankRankRank
Total Posts:  7685
Joined  2006-03-19

The image posting is on the list of things to fix. Have you had this problem before or is it just starting now. What are your system specs and which version of Hex are you using?

 Signature 

ARTCollaborations Store on DAZ3D    ARTCollaborations on Facebook

*****Mad Chemistry Lab*****  

 

Profile
 
 
Posted: 05 June 2012 02:35 PM   [ Ignore ]   [ # 2 ]
Member
Rank
Total Posts:  250
Joined  2009-01-27
Frank0314 - 05 June 2012 02:31 PM

The image posting is on the list of things to fix. Have you had this problem before or is it just starting now. What are your system specs and which version of Hex are you using?

 
Actually, I’ve never had the problem at all. This is what I found regarding someone else’s problem, and then discovered I could easily duplicate the problem.
 
FWIW, my system is XP pro x86 running 2.5.1.79.
 
Stand by, I’m still trying to get some kind of inline imaging going on my first post…

 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 02:53 PM   [ Ignore ]   [ # 3 ]
Member
Rank
Total Posts:  250
Joined  2009-01-27

Okay, I’m finished posting this nightmare. I hope you can all follow it with no problem.

 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 09:23 PM   [ Ignore ]   [ # 4 ]
Member
Rank
Total Posts:  48
Joined  2006-08-23

Just for the record, this has nothing to do with how Hex saves the .obj.

http://www.4shared.com/zip/XN7B0Tah/knot.html

The same “twisted” n-gon made in XSI also crashes Hex when imported. I suspect it would be the same for any .obj imported regardless of where it was made.It looks to me that Studio adds an edge where one doesn’t exist is why the export from it fixes it.

 

Profile
 
 
Posted: 05 June 2012 09:44 PM   [ Ignore ]   [ # 5 ]
Member
Rank
Total Posts:  250
Joined  2009-01-27
admkrk - 05 June 2012 09:23 PM

Just for the record, this has nothing to do with how Hex saves the .obj

Never said it did. In fact, my claim is that the error occurs on import when hexagon fails to facet the ngon properly.
 

The same “twisted” n-gon made in XSI also crashes Hex when imported. I suspect it would be the same for any .obj imported regardless of where it was made

That’s correct. It’s not the object that’s at fault; it’s hexagon’s inability to facet a twisted ngon correctly on import that’s at fault. In fact, Roygee also sent me HXN files of his meshes, and the HXN with the twisted ngon crashed Hexagon as well.
 

It looks to me that Studio adds an edge where one doesn’t exist is why the export from it fixes it

2 edges. But yes; it does this by triangulating the 5-sided ngon into 3 tris as I pointed out above in detail.
 
Didn’t download your file. The site requires registration to download.

 

 

 

 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 10:13 PM   [ Ignore ]   [ # 6 ]
Member
Rank
Total Posts:  48
Joined  2006-08-23
afreaginname - 05 June 2012 09:44 PM

Didn’t download your file. The site requires registration to download.

Don’t remember that happening before, but haven’t used it in a few years either.

To be honest, non-planar geometry like that is bad to start off with and with all the problems Hex has with high poly geometry this isn’t a surprise.

afreaginname - 05 June 2012 09:44 PM

Yes. It does this by triangulating the 5-sided ngon into 3 tris as I pointed out above in detail.

If you’re talking about the 4th image, that’s a quad and a tri. The edge going from points 4 and 1 is the one that doesn’t really exist and the one going from 5 and 1 simply overlaps the one from 3 and 4. There is no vertex there I can see.

I’m a simple minded person tho so maybe if you give the 3 tris their own shading domain and different colors I’ll be able to see it?

Profile
 
 
Posted: 05 June 2012 10:21 PM   [ Ignore ]   [ # 7 ]
Member
Rank
Total Posts:  250
Joined  2009-01-27
admkrk - 05 June 2012 10:13 PM
afreaginname - 05 June 2012 09:44 PM

Yes. It does this by triangulating the 5-sided ngon into 3 tris as I pointed out above in detail.

If you’re talking about the 4th image, that’s a quad and a tri. The edge going from points 4 and 1 is the one that doesn’t really exist and the one going from 5 and 1 simply overlaps the one from 3 and 4. There is no vertex there I can see.
I’m a simple minded person tho so maybe if you give the 3 tris their own shading domain and different colors I’ll be able to see it?

 
No. The 4th Image is NOT a quad and a tri, it’s a folded (“twisted”) ngon. There are no tris or quads in any of my images. All my images are of a single ngon.
 
The tris I mentioned are in the FIXED file, not the broken one.

 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 10:33 PM   [ Ignore ]   [ # 8 ]
Member
Rank
Total Posts:  48
Joined  2006-08-23

You’re right, I was mistaken there, but you threw me off by stating you showed it in detail which I couldn’t see so that was all I had to go by.

Irregardless, it doesn’t change this:
“To be honest, non-planar geometry like that is bad to start off with and with all the problems Hex has with high poly geometry this isn’t a surprise. “

Profile
 
 
Posted: 05 June 2012 10:53 PM   [ Ignore ]   [ # 9 ]
Power Member
Avatar
RankRankRank
Total Posts:  1373
Joined  2008-01-01

My thanks to you for going to all the trouble of identifying the problem.http://www.daz3d.com/forums/smileys/#

This has bugged many folk here - now we have a solution and I’ve found a useful function in Studio.

How this happened is a mystery because I’m pretty fastidious about making good mesh - I can only assume it was one of those occasions where the universal manipulator leaps about and does its own thing when you do a selection too close to it.  Being hidden from view it escaped my notice.

From now on I’ll check for N-gons before saving.

Profile
 
 
Posted: 05 June 2012 11:04 PM   [ Ignore ]   [ # 10 ]
Member
Rank
Total Posts:  250
Joined  2009-01-27
admkrk - 05 June 2012 10:33 PM

You’re right, I was mistaken there, but you threw me off by stating you showed it in detail which I couldn’t see so that was all I had to go by.
 
Irregardless, it doesn’t change this:
“To be honest, non-planar geometry like that is bad to start off with and with all the problems Hex has with high poly geometry this isn’t a surprise. “

 
Personally, I try to avoid ngons like the plague. But this post is just the result of my attempts to track down the cause of a fairly common problem and may even underscore why they should be avoided or at least used sparingly and carefully. I don’t know where these ngons may come from when building models, but clearly they exist. The least hexagon should be able to do is to read the ngons it writes. But then again, hexagon can write lines to an object file but can’t read them back in either.
 
Hexagon has its problems, but I still think it’s the greatest thing since sliced bread.
 
BTW, the only way of guaranteeing 100% planar geometry is to use tris exclusively; but I avoid that like the plague, too.
 

 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 11:10 PM   [ Ignore ]   [ # 11 ]
Member
Rank
Total Posts:  250
Joined  2009-01-27
Roygee - 05 June 2012 10:53 PM

My thanks to you for going to all the trouble of identifying the problem

 
Thanks Roy! And no problem at all! As I mentioned before, tracking stuff like this down is a lot more more fun than doing crossword puzzles, and I enjoyed doing it!  grin

 Signature 

For any arguments or illustrations I give, my system specs are:
Hexagon version 2.5.1.79,  XP pro 32 bit,  pentium core2 duo,  ATI radeon 3870, 2 gigs ram

Profile
 
 
Posted: 05 June 2012 11:36 PM   [ Ignore ]   [ # 12 ]
Member
Rank
Total Posts:  231
Joined  2006-11-17

Just one more bug to add to the list of bugs added by DAZ in the latest version. It is bad geometry, but does not crash 2.1 and should not crash any poly-modeler.

Buggy software, buggy forum. At least consistency.

Profile
 
 
Posted: 05 June 2012 11:49 PM   [ Ignore ]   [ # 13 ]
Member
Rank
Total Posts:  48
Joined  2006-08-23
Roygee - 05 June 2012 10:53 PM

My thanks to you for going to all the trouble of identifying the problem.http://www.daz3d.com/forums/smileys/#

This has bugged many folk here - now we have a solution and I’ve found a useful function in Studio.

How this happened is a mystery because I’m pretty fastidious about making good mesh - I can only assume it was one of those occasions where the universal manipulator leaps about and does its own thing when you do a selection too close to it.  Being hidden from view it escaped my notice.

From now on I’ll check for N-gons before saving.

I didn’t mean to imply that you or anyone else was making wonkie meshes on purpose. This shouldn’t be a problem for Hex to handle and while sending back and forth to Studio seems like a temporary solution it’s not an answer any more than triangulating the mesh before saving would be. Personally I don’t look for things like that until I get ready call a model done and usually have a few issues of one kind or another at that point to clean up.

I also don’t think this is anything that can be fixed without fixing the amount of polygons Hex can handle to begin with.

 

Profile
 
 
Posted: 06 June 2012 06:28 AM   [ Ignore ]   [ # 14 ]
Active Member
Avatar
RankRank
Total Posts:  353
Joined  2006-02-03

I repeated the exercise of the ‘out of vertex order’ polygon and it does crash Hexagon.

It also crashes Lightwave3D 9.6 Layout.

Hexagon will crash if I save the bozo.obj from Modeler 9.6 Lightwave and imported back into Hexagon.

Hexagon will crash if I save the bozo.obj from Carrara and import it back into Hexagon.
(note:  Carrara did not crash if I selected the polygon in the model room and try to “fix it.”)

Since the vertex order is “out of order” and not all of the n-gon is facing forward like it should, there is a problem and there isn’t a way to resolve where normals should be.

You can test this in Carrara.  The reverse normals will cause the “dragged down” portion of the n-gon to flip.  It doesn’t fix the crash problem, but it indicates that bad geometry where unresolved out of vertex order anomalies are bad for most 3D software.

Fixing normals in Hexagon also doesn’t resolve the out of vertex order.

 

Profile
 
 
Posted: 06 June 2012 01:44 PM   [ Ignore ]   [ # 15 ]
Active Member
Avatar
RankRank
Total Posts:  367
Joined  0

Interestingly, performing the same sequence with the Mac version of Hexagon 2.5.1.79, does not produce a crash. It does produce the same malformed facet when the twisted n-gon file is reloaded, however, it can be repaired by moving the previously moved corner back up to near where it was and performing “Merge coplanar facets”.

Image Attachments
folded-n-gon-crash-test.png
 Signature 

-Dean

DAZ Gallery: http://www.daz3d.com/gallery/#users/1922/

Profile
 
 
   
1 of 3
1