Jump to content

Identifying mesh error from Firestorm log?


Recommended Posts

I'm trying to upload a large, multipart model. I've uploaded it before with no problems whatsoever, but coming back to it after a few weeks (and no significant changes that I can recall) it has suddenly developed Degenerate Triangles.

I'm trying to figure out exactly where, without going to the extent of removing it piece by piece and trying to reupload until I hit the culprit. That would take days.

Is there a way for me to correlate the data in Firestorm's log with the collada file and ultimately my model in Blender? I can't see one so far...

An excerpt from FS's log is:

BlockName: 'physics_mesh'
Context: 'validateDecompressedPhysicsMeshData'
ErrorCode: i21
FaceIndex: i0
MeshIndex: i77
TriangleIndex: i0
Vertex0: [r-0.250000,r-0.250000,r0.250000]
Vertex1: [r-0.000004,r0.250000,r-0.250000]
Vertex2: [r-0.000004,r0.250000,r-0.250000]

This is repeated five more times, identically apart from different MeshIndex numbers which are consecutive. Oddly, I can't recall or find anything of exactly those dimensions that is repeated six times in my model. Nothing is repeated six times. Eight, four, two yes, but not six.

I have no idea how FS generates the indices, but counting from the first instance of <mesh> or <geometry...> tags in the collada file doesn't seem to give anything conclusive. It puts me in the middle of a subset (a window which worked perfectly before and hasn't changed) which is repeated nine times identically, and still doesn't have anything of those dimensions.

So much for just quickly, finally uploading a finished version of that model...

ETA: Found it!

ETA2: No I haven't


Link to comment
Share on other sites

Usually the preview window shows the location of degenerate triangles as thick black lines, with a dot on each end. In a large build these might be hard to see though. They used to be colored in bright red in erlier versions of the viewer, which were much easier to spot.

Just a thought.... since you haven't changed much on your build, maybe some of the physics meshes got assinged to the wrong part of the model, and squished so that it produces these degenerated tris now?

Link to comment
Share on other sites

Hmm... I didn't know about the degenerate triangle highlighting in the uploader view. I did look all around it though when I got the problem in case I could see anything, and couldn't. It's a big house. Nice to know though, thanks!

I wondered about the assignments getting messed up too. I'm careful to use hierarchical naming so it didn't take long to go through my objects. They seem correct.

Anyway, after scratching my head to the point of baldness, I decided to cut my losses half an hour ago and drop back to the last-known-good (i.e. successfully uploaded) revision; only a few 0.01 points back so probably nothing significant.

I have just discovered one thing...

The uploader absolutely cannot be relied on to triangulate complex faces, like those made in a wall for multiple windows using the boolean modifier.

I had Blender set to not triangulate because a lot of my objects have custom normals, and my upload had most of the windows filled in. Manually triangulating (which I usually do anyway, but for some reason hadn't on this file) and reuploading fixed it. Good thing we have the beta grid!

Link to comment
Share on other sites

A Degenerate Triange can also mean that there is a face with a surface size of 0

So the triangle is so small, that the uploader is not able to calculate a surface area from it.




Vertex0: [r-0.250000,r-0.250000,r0.250000]
Vertex1: [r-0.000004,r0.250000,r-0.250000]
Vertex2: [r-0.000004,r0.250000,r-0.250000]


Are Position coordinates of 3 vertices that build an triangle.. As you can see they sit on entire the same spots.

Or, to make it easier to understand lets translate the numbers a bit


Vertex0: it sits on 1,1,1   ( x, y, z )

Vertex1 sits on     2,1,1  ( x, y, z )

Vertex 2 on 2,1,1 also ( x,y,z )


So in a triangle 2 corners ( 2 and 3 ) are sitting on the exact same position. therefore the entire size of the surface they are supposed to build is 0. This is a degenerated Triangle.


Oh as an addenum:


You are probably able to find those in the model in Blender by taking the object into edit mode.

Make sure nothig in selected and also that you are in Vertex select mode.


Go to the selecet menue at the lower end of the 3d Window. From this menue go to "Select all by Trait"  -> "Non Mainfold"


Or push "Shift+CTRL+Alt+M"


Sometimes Blender is able to catch such unwanted Mainfolds. Its not a guanrantee, thought.


Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in

Sign In Now
  • Create New...