Skip to content
Snippets Groups Projects
Commit acc0eca5 authored by Bastien Montagne's avatar Bastien Montagne Committed by Sergey Sharybin
Browse files

Fix T44106: Obj importer broken.

In fact, it's the OBJ file which is utterly broken (thousands of faces reusing the same vertex...).
I think 'breakage' comes actually from change in bmesh (raising error when trying to get
an edge with same vert in both items of the key), afaiks this is not different from
old code in current importer.

Anyway, working around this is easy and cheap, so...

To be backported in final 2.74.
parent c09c5607
No related branches found
Tags v2.74-rc2
No related merge requests found
......@@ -435,7 +435,7 @@ def create_mesh(new_objects,
smooth_group_users = {context_smooth_group: {} for context_smooth_group in unique_smooth_groups.keys()}
context_smooth_group_old = -1
fgon_edges = set() # Used for storing fgon keys whe we need to tesselate/untesselate them (ngons with hole).
fgon_edges = set() # Used for storing fgon keys when we need to tesselate/untesselate them (ngons with hole).
edges = []
tot_loops = 0
......@@ -508,6 +508,8 @@ def create_mesh(new_objects,
prev_vidx = face_vert_loc_indices[ngon[-1]]
for ngidx in ngon:
vidx = face_vert_loc_indices[ngidx]
if vidx == prev_vidx:
continue # broken OBJ... Just skip.
edge_key = (prev_vidx, vidx) if (prev_vidx < vidx) else (vidx, prev_vidx)
prev_vidx = vidx
if edge_key in edge_users:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment