Page MenuHome

Add support to tessellate 'ngons with holes' in mesh's validate() func? Much useful for importers (FBX, OBJ...)
Open, NormalPublic


System Information

Blender Version

Short description of error
fbx does not import NGON. But it imports into Modo.



Exact steps for others to reproduce the error
import fbx


To Do

Event Timeline

paul geraskin (mifth) set Type to Bug.
paul geraskin (mifth) created this task.
paul geraskin (mifth) raised the priority of this task from to Needs Triage by Developer.
Bastien Montagne (mont29) triaged this task as Normal priority.

Well… FBX does import ngons, the problem is that Blender does not supports ngons with holes (nor ngons using same edge more than once, which is how ngons with holes are represented in formats like FBX or OBJ).

OBJ importer does handle that situation, but the issue here is that doing the same thing with a format as complex as FBX is not really possible (would be a nightmare to correctly map newly generated geometry to old one for all the datalayers). It’s already really complex code in OBJ, btw.

Think the solution here would rather be to add an additional step to our (C-coded) mesh.validate() func, which would check for those blender-invalid specific cases and modify the geometry accordingly. Would also be much more efficient than doing this in py.

@Campbell Barton (campbellbarton) if you agree, I can try to make a patch?

Bastien Montagne (mont29) renamed this task from FBX: fbx does not import NGON to Add support to tessellate 'ngons with holes' in mesh's validate() func? Much useful for importers (FBX, OBJ...).
Bastien Montagne (mont29) claimed this task.

@Bastien Montagne (mont29), hi, yes - this can be added to validate. (port from OBJ's Python code).

However I'd like it to be optional, since this _is_ an invalid face for Blender.

Yes of course, this has to be an option, we do not want that to validate internally-generated meshes ;)

Bastien Montagne (mont29) changed Type from Bug to To Do.Nov 16 2015, 3:01 PM