I’m still making games in Blender 2.79. That’s my hobby, and always will be. I love this software, I love logic bricks, and solving my idead with it, and that’s enough for me. Sadly sometimes some meshes are getting corrupted, and it can destroy all scene and crash Blender. In the past I found a script to write in concole, and find which meshes have to be repaired. Results were like:
And where there was True I knew what to fix. I lost the script, and I cant find it on internet anymore. Can someone help please? I would be greatful for lifetime. I would print the script and put it on frame above my desk. I can’t script but I remember something like this:
The problem is I don’t know what object are corrupted. I don’t even know why they are corrupted. It’s very often thing. I would say for 100 created object there will be 1-5 that I must fix (delete, and create new one) . It’s all about the mesh. Sometimes something bad is happining to some objects. This script I had was showing me the name of objects with bad mesh causing a problem. Once I almost lost all my project, I could not open it becouse Blender was crashing.
1 ) Did you open or import from a blend from Blender 2.79 into a Blender 2.8+ version. Or vice-versa?
2 ) Are you using custom split normals by chance?
3 ) Do you still have the old, check mesh if corrupted script by chance?
The results are printed to the system console when executed from the text editor, and both to the system and the python console when run from the python console. Also, I don’t know why you get those True and False, as the script only prints a message telling you the names of the objects with invalid geometry.
The text you removed explains why there are no more results when you run the script again: validate corrects or removes the invalid geometry from the mesh data, that’s why the second time it shows nothing: all the meshes are already valid.
You can always copy the results of the first run from the console or even output it to a text block.
You can use validate(True) to show what has been checked and the invalid mesh data fixed, but it will show it for every mesh, valid or not. It removes references to indices out of range, egdes with matching vertex indices, etc. You can’t use validate without it fixing those errors, that’s how it works. Maybe it’s something else that you were using, you should check the API documentation.
Yes it was just showing the list of all objects with True or False. When I saw False on the list, I knew what to fix. But removing corrupted objects is shocking to me. However, thank you all <3