CGCookie / retopoflow

A suite of retopology tools for Blender
2.48k stars 249 forks source link

Hard crash when filling 5+ vertices with Polypen #323

Closed animatoring closed 6 years ago

animatoring commented 7 years ago

A hard crash usually occurs when filling 5+ vertices with the polypen in either object or edit mode. Preview of crash screen: crash_screen

carter2422 commented 7 years ago

@animatoring any chance you can replicate this on a consistent basis? We've had this happen a few times but as of yet have never been able to replicate it in a way that enables us to track it down.

If you can replicate and provide the steps to replicate we'd love to get this fixed.

animatoring commented 7 years ago

Thanks carter! This is kind of an extreme example but attached is just a monkey with a basic ring of polygons made from polypen in object mode. If you create more faces in the same pattern as the screenshot it will give the hard crash. It will hard crash on the 4th point.

Blend file: http://pasteall.org/blend/index.php?id=45271 connect

Usually I wouldn't create polygons this way but it was one of the only ways I could get it to give the crash right now. Normally it happens when you have two rings of polygons with no faces between them and are trying to connect them from one point to the next without skipping any.

animatoring commented 7 years ago

This is an example of how I'd usually use it and have the error but it isn't giving the hard crash only an error message right now:

Blend: http://pasteall.org/blend/index.php?id=45272 connect2

I'd usually be working with more polygons than the example but would be doing the same thing. I'd want to connect multiple vertices to fill the hole between the two rings. Similar to how you could select two edge loops on an object and fill or bridge them. It would usually give a hard crash but in this case it only gives an error when going to the 4th point.

carter2422 commented 7 years ago

@animatoring so sorry for missing this earlier.

I assume the 1,2,3,4 are your click steps? If so then this would not make a valid polygon. We should handle the error better but we also shouldn't support filling that geometry in my opinion due to it causing a concave quad.

Is this the error you were getting? https://cl.ly/lJSU

EXCEPTION (<class 'AssertionError'>): unhandled count of linked faces 1, 2
         /Users/jonathanwilliamson/Dropbox (Personal)/blenderDev/addons/cgCookie/scripts/addons/retopoFlow/op_polypen/polypen_modal.py
000 1043:clean_duplicate_bmedges() assert handled, 'unhandled count of linked faces %d, %d' % (l0,l1)
001 1285:handle_insert_vert_nearest() self.clean_duplicate_bmedges(self.nearest_bmvert)
002 0977:handle_action_selface() return self.handle_insert_vert_nearest(context, eventd)
003 0795:handle_action() return self.handle_action_selface(context, eventd)
004 0393:modal_wait() return self.handle_action(context, eventd)
         /Users/jonathanwilliamson/Dropbox (Personal)/blenderDev/addons/cgCookie/scripts/addons/retopoFlow/modaloperator.py
005 0245:modal_main() nmode = self.FSM['wait'](context, eventd)
006 0300:modal() nmode = self.FSM[self.fsm_mode](context, eventd)
vxlcoder commented 6 years ago

I believe this issue applies to v1.x only, so I'm going to close this issue now that v2.0 is officially released (see release/2.0.0 branch or Blender Market page). If this is still an issue with v2.0, please reopen, and post more details. Thanks for reporting this issue, and we look forward to seeing how v2.0 helps your retopo workflow!