bnpr / Malt

Render framework for NPR.
https://malt3d.com
Other
976 stars 75 forks source link

Crash in CBlenderMalt.retrieve_mesh_data #580

Open pragma37 opened 6 days ago

pragma37 commented 6 days ago

Originally posted by @Dereuz24 in https://github.com/bnpr/Malt/issues/560#issuecomment-2324851913


Hi @pragma37 Would it be possible for you to make a custom build or implement into the addon the error reporting for when Malt crashes Blender because of topology issues?

With meshes with really bad topology and where faces are intersecting in a weird way Malt crashes Blender. It would be very useful to just get an error message or just no rendering of the object when it fails.

I was working on a project and I just spent a few hours going through every single mesh by hand and fortunately I was able to find the mesh and bisect it until I got the few planes responsible for the crash. Here's the blend:

https://drive.proton.me/urls/ASWADZ2MGW#xtUAfk36T3k9

And this is the error repeating over and over in the logs:

Blender > CBlenderMalt.retrieve_mesh_data( Blender >

Blender > Blender > OSError Blender > : Blender > exception: access violation writing

It happens in 4.1, 4.2, portable, on installation and in several OS.

With shapekeys, extreme deformations and so on there should be a way to force malt to at least give a shadeless mesh if an error like this is found during render time

Before the crash the mesh always appears shadeless, I imagine that's when it gets stuck in a loop trying to find mesh information. That would be enough so we could go in an manually clean up the problem without guessing which object is causing the issue

pragma37 commented 6 days ago

Hi @Dereuz24, I've moved your comment to a new issue since it's not really related to the issue where you posted it initially. I can reproduce the crash with your mesh, so I'll take a look at it once I have some time.

Dereuz24 commented 6 days ago

Thank you. I haven't found a similar problem again since then so that mesh seems to be very particular. Can't wait to see what's going on in there