Hmm. It could be possible using this code. I didnt test it or so.
Add this extension to pandac/libpandaModules.py:
def __getstate__(self):
return (self.getX(), self.getY(), self.getZ())
Dtool_funcToMethod(__getstate__, Vec3)
del __getstate__
def __setstate__(self, obj):
return Vec3(*obj)
Dtool_funcToMethod(__setstate__, Vec3)
del __setstate__
Check whether its pickleable after adding this extension.
…I don’t know if this actually works, but something like this could be an idea.