Handle triple-overdraw edge case

This commit is contained in:
Jack Andersen 2018-11-08 18:34:49 -10:00
parent 304fc7e69e
commit 3f7431286c
1 changed files with 6 additions and 2 deletions

View File

@ -480,12 +480,16 @@ void InitGeomBlenderContext(hecl::blender::PyOutStream& os,
" face = od_entry['bm'].faces.new(verts)\n"
" else: # Probably a double-sided surface\n"
" verts = [od_entry['bm'].verts[i + two_face_vert] for i in vert_indices]\n"
" face = od_entry['bm'].faces.new(verts)\n"
" face = od_entry['bm'].faces.get(verts)\n"
" if face is None:\n"
" face = od_entry['bm'].faces.new(verts)\n"
" ret_mesh = od_entry['bm']\n"
"\n"
" elif face is not None: # Same material, probably double-sided\n"
" verts = [vert_seq[i + two_face_vert] for i in vert_indices]\n"
" face = bm.faces.new(verts)\n"
" face = bm.faces.get(verts)\n"
" if face is None:\n"
" face = bm.faces.new(verts)\n"
"\n"
" else: # Make totally new face\n"
" face = bm.faces.new(verts)\n"