Page 1 of 1

CoppeliaSim Crash When Adding Convex Shape In PyBullet Engine

Posted: 07 Dec 2024, 13:19
by alireza.beigy
I encountered a crash in CoppeliaSim when using Python to add a shape, perform convex decomposition via HACD, and then start the PyBullet engine. The simulator crashes immediately upon starting the engine. Below is the error log from the CoppeliaSim console:

Code: Select all

[CoppeliaSim:loadinfo]   plugin simGeom: loading...
[CoppeliaSim:loadinfo]   plugin simGeom: done.
[CoppeliaSim:loadinfo]   plugin simBullet-2-78: loading...
[CoppeliaSim:loadinfo]   plugin simBullet-2-78: done.
[CoppeliaSim:loadinfo]   OpenGL: NVIDIA Corporation, Renderer: NVIDIA GeForce RTX 3060/PCIe/SSE2, Version: 4.6.0 NVIDIA 566.36
CoppeliaSim: debug: 51: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 50: UnhandledExceptionFilter - 0x7FFDA0C9C830
CoppeliaSim: debug: 49: memcpy - 0x7FFDA3456F00
CoppeliaSim: debug: 48: _C_specific_handler - 0x7FFDA343F730
CoppeliaSim: debug: 47: _chkstk - 0x7FFDA3455310
CoppeliaSim: debug: 46: RtlFindCharInUnicodeString - 0x7FFDA33CDDF0
CoppeliaSim: debug: 45: KiUserExceptionDispatcher - 0x7FFDA3454410
CoppeliaSim: debug: 44: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 43: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 42: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 41: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 40: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 39: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 38: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 37: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 36: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 35: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 34: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 33: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 32: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 31: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 30: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 29: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 28: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 27: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 26: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 25: simInit - 0x7FFBE27B30B0
CoppeliaSim: debug: 24: simMsg - 0x7FFBE27A9030
CoppeliaSim: debug: 23: dynPlugin_step_D - 0x7FFBE27B3060
CoppeliaSim: debug: 22: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 21: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 20: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 19: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 18: lua_setlocal - 0x7FFD10E3ABB0
CoppeliaSim: debug: 17: luaopen_utf8 - 0x7FFD10E52520
CoppeliaSim: debug: 16: lua_setlocal - 0x7FFD10E3ABB0
CoppeliaSim: debug: 15: lua_setlocal - 0x7FFD10E3ABB0
CoppeliaSim: debug: 14: lua_setlocal - 0x7FFD10E3ABB0
CoppeliaSim: debug: 13: lua_pcallk - 0x7FFD10E31D20
CoppeliaSim: debug: 12: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 11: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 10: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 9: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 8: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 7: simGetJointCallbackCallOrder - 0x7FFCF03933D0
CoppeliaSim: debug: 6: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 5: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 4: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 3: simWriteTexture_D - 0x7FFCF048F5B0
CoppeliaSim: debug: 2: recalloc - 0x7FFDA0809290
CoppeliaSim: debug: 1: BaseThreadInitThunk - 0x7FFDA2A42580
CoppeliaSim: debug: 0: RtlUserThreadStart - 0x7FFDA340AF10
Steps to Reproduce using attached scene:
1. Open scene in CoppeliaSim (version 4.8.0).
4. Start the PyBullet physics engine.
5. The simulator crashes immediately.

Expected Behavior:
The shape should be added, and convex decomposition should work without causing a crash when PyBullet is started.

Actual Behavior:
CoppeliaSim crashes immediately when starting the PyBullet engine after adding a convex shape via Python.

Version Information:
- CoppeliaSim version: 4.8.0
- PyBullet engine version: 2.78
- Graphics card: NVIDIA GeForce RTX 3060, Driver version 566.36

Additional Information:
- I will attach the scene file that reproduces the issue. Simply loading the scene and starting the PyBullet engine results in the crash.
- The issue may be related to the interaction between HACD convex decomposition and PyBullet physics, but I am unsure.

Scene File: https://drive.google.com/file/d/1T1QhJA ... sp=sharing

Re: CoppeliaSim Crash When Adding Convex Shape In PyBullet Engine

Posted: 09 Dec 2024, 13:22
by coppelia
Hello,

this seems to be related to a shape component in object_A0_obj that causes Bullet to crash. All other engines do not crash.

Your best bet is to recreate that shape. It appears to be perfectly convex, so you can just extract the convex hull from it with [Menu bar > Modules > Geometry / Mesh > Convex hull...]

Cheers