|
Hi,
After successfully implementing a FBX Extension Plugin for Maya (running on linux 64 and windows XP/7 64), we wanted to port the functionality over to 3dsMax 2011 (no service pack) and the downloaded fbxmax.dlo plugin which uses the fbxsdk version 2011.3.
The fbx extension plugin was compiled with the fbx extension sdk version 2011.3 in VC2008 for 64 bit and copied into the right spot in the max installation directory.
When 3dsMax2011 x64 is now loaded on windows 7, a popup can be seen with an error 998, which appears to happen if the dll entry point raises an exception. The corresponding fbxmax.dlu fails to load and is not available.
Fortunately, this issue can be debugged, and the fbx extension dll’s entry point, FBXPluginRegistration, is called. The mName and mVersion members appear to be uninitialized even once the sPluginDef struct was created on the stack. When assigning a new name to mName, the program crashes, which appears to be due to some string incompatability. We suspected the string literals in the code to be unicode, and disabled the inherited preprocessor defines (_UNICODE), but that didn’t fix the issue. The KStrings appear to have very incorrect information, as well as uninitialized lengths.
The same fbx extension plugin compiled with VC2005 for 64 bit worked properly when loaded by fbxmax (20113) for 3dsMax 2009 x64 though.
Interestingly, the FBX Extension Plugin examples showed exactly the same issues, so apparently their VCProject files already have this configuration issue ( if it is one ). The respective sample files have been attached.
Did anyone have similar experiences, or did I miss something obvious, when compiling it using VC2008 ?
Thank you,
Sebastian
|