R20 Alembic Export Crash
-
Hi,
I'm trying to use the ExportAlembic.py example in Cinema 4D R20 but the application crashes.
The same example works in R19.
Doing it manually via
File > Export... > Alembic (*.abc)
does work.Tried in both Windows 10 and macOS.
While in macOs the crash reporter makes a log, in Windows, the applications freezes with "Preparing Project for Export" in the status bar.
-
Hi @dev-vfxboat, first of all, welcome in the plugincafe community.
This is a known bug and already fixed for SP2 (the next Service Pack). It's impacting both Python and C++.
The workaround is to pass the flagc4d.SAVEDOCUMENTFLAGS_DIALOGSALLOWED
to the SaveDocument function.Moreover, don't worry, but please make sure to read and use How to Post Questions (Especially about tagging system)
Cheers,
Maxime. -
This seems to still be happening in R20 for me and the workaround didn't seem to help. I don't see any mention of it in the release notes. This method succeeds (successful export) but Cinema freezes. I am on R20 059 (SP2 HF1) on Windows 10
void ExampleDialog::exportObj(BaseObject* obj) { AutoAlloc<BaseDocument> virtualDoc; virtualDoc->InsertObject(obj, nullptr, nullptr); String filepath = "D:\\Dropbox\\model.obj"; SaveDocument(virtualDoc, filepath, SAVEDOCUMENTFLAGS::DIALOGSALLOWED, 1030178); }
-
Hi @ryangordon, the Id (1030178) correspond to FORMAT_OBJ2EXPORT. So consider that both ABC and OBJ exporter is crashing in your case.
Here I'm not able to reproduce with the next code
AutoAlloc<BaseDocument> virtualDoc; AutoAlloc<BaseObject> obj{Ocube}; virtualDoc->InsertObject(obj, nullptr, nullptr); String filepath = "C:\\Users\\m_adam\\Desktop\\model.obj"; SaveDocument(virtualDoc, filepath, SAVEDOCUMENTFLAGS::DIALOGSALLOWED, FORMAT_OBJ2EXPORT);
So I'm wondering if you really own the BaseObject pointer and if the issue is not there. Maybe the object is already inserted. If you can provide a full example it will help me to reproduce.
Cheers,
Maxime. -
Ah I think you're right - I take the object right from the document without a clone or anything. Thank you!