m2u / m2uUE4Plugin

m2u Unreal Engine 4 Plugin C++ code
MIT License
42 stars 64 forks source link

4.10, fbxsdk.h #2

Open gdevdeiv opened 8 years ago

gdevdeiv commented 8 years ago

Heya!

Finally I got here and discovered you had a 4.9 version of the plugin, it was difficult to find. I would love to see a 4.10 version of it, I just can't get it to compile, seems fbxsdk.h is inaccessible in this version(?).

Thanks guys, keep up the good work, you have a REALLY nice plugin on your hands, help us enjoy it.

macoywen commented 8 years ago

when compiled in 4.10 with fbxsdk 2016.1.2, got the following errors in the end. It's soooo close to generating the dll.

1>m2uFbxFactory.cpp.obj : error LNK2019: unresolved external symbol "void * cdecl fbxsdk::FbxMalloc(unsigned int64)" (?FbxMalloc@fbxsdk@@YAPEAX_K@Z) referenced in function "public: void * cdecl fbxsdk::FbxBaseAllocator::AllocateRecords(unsigned int64)" (?AllocateRecords@FbxBaseAllocator@fbxsdk@@QEAAPEAX_K@Z) 1>m2uFbxFactory.cpp.obj : error LNK2019: unresolved external symbol "void cdecl fbxsdk::FbxFree(void *)" (?FbxFree@fbxsdk@@YAXPEAX@Z) referenced in function "public: void cdecl fbxsdk::FbxRedBlackTree<class fbxsdk::FbxMap<class fbxsdk::FbxString,class fbxsdk::FbxObject ,struct fbxsdk::FbxStringCompare,class fbxsdk::FbxBaseAllocator>::KeyValuePair,struct fbxsdk::FbxStringCompare,class fbxsdk::FbxBaseAllocator>::Clear(void)" (?Clear@?$FbxRedBlackTree@VKeyValuePair@?$FbxMap@VFbxString@fbxsdk@@PEAVFbxObject@2@UFbxStringCompare@2@VFbxBaseAllocator@2@@fbxsdk@@UFbxStringCompare@3@VFbxBaseAllocator@3@@fbxsdk@@QEAAXXZ) 1>m2uFbxFactory.cpp.obj : error LNK2019: unresolved external symbol "public: cdecl fbxsdk::FbxString::FbxString(class fbxsdk::FbxString const &)" (??0FbxString@fbxsdk@@QEAA@AEBV01@@Z) referenced in function "public: cdecl fbxsdk::FbxPair<class fbxsdk::FbxString const ,class fbxsdk::FbxObject >::FbxPair<class fbxsdk::FbxString const ,class fbxsdk::FbxObject >(class fbxsdk::FbxPair<class fbxsdk::FbxString const ,class fbxsdk::FbxObject > const &)" (??0?$FbxPair@$$CBVFbxString@fbxsdk@@PEAVFbxObject@2@@fbxsdk@@QEAA@AEBV01@@Z) 1>m2uFbxFactory.cpp.obj : error LNK2019: unresolved external symbol "public: cdecl fbxsdk::FbxString::~FbxString(void)" (??1FbxString@fbxsdk@@QEAA@XZ) referenced in function "public: cdecl fbxsdk::FbxPair<class fbxsdk::FbxString const ,class fbxsdk::FbxObject >::~FbxPair<class fbxsdk::FbxString const ,class fbxsdk::FbxObject >(void)" (??1?$FbxPair@$$CBVFbxString@fbxsdk@@PEAVFbxObject@2@@fbxsdk@@QEAA@XZ) 1>m2uFbxFactory.cpp.obj : error LNK2019: unresolved external symbol "public: cdecl fbxsdk::FbxString::operator char const *(void)const " (??BFbxString@fbxsdk@@QEBAPEBDXZ) referenced in function "public: int cdecl fbxsdk::FbxStringCompare::operator()(class fbxsdk::FbxString const &,class fbxsdk::FbxString const &)const " (??RFbxStringCompare@fbxsdk@@QEBAHAEBVFbxString@1@0@Z) 1>m2uFbxFactory.cpp.obj : error LNK2019: unresolved external symbol "public: int cdecl fbxsdk::FbxString::Compare(char const *)const " (?Compare@FbxString@fbxsdk@@QEBAHPEBD@Z) referenced in function "public: int cdecl fbxsdk::FbxStringCompare::operator()(class fbxsdk::FbxString const &,class fbxsdk::FbxString const &)const " (??RFbxStringCompare@fbxsdk@@QEBAHAEBVFbxString@1@0@Z) 1>Z:\Unreal Projects\m2u\Plugins\m2uUE4Plugin-master\Binaries\Win64\UE4Editor-m2uPlugin.dll : fatal error LNK1120: 6 unresolved externals

alfalfasprossen commented 8 years ago

I can't reproduce the problem. For me it compiles fine for the 4.10 engine branch. Also the plugin itself is not actively using or including any fbxsdk functionality, it is only doing so by referencing the standard fbx-importer that comes with the engine. I can not currently get it to compile for the 4.11 engine branch though, will look into that.

Is your engine code clean, the dependencies up-to-date? Does the engine compile correctly without the plugin code added?

macoywen commented 8 years ago

I put the plugin in a project folder to build instead of the full engine source. That might be the problem. I added a fbx module to the build file and now it compiled correctly.

Also made modification to the maya script part to make it work in maya Y-up axis.

fetchFromeditor seems to have -90 degrees rotation which is a unreal fbx export "bug" without convert scene axis I think. Also made a separate script to deal with that since don't know how to do it in your script.

one problem I couldn't solve is that with the plugin enabled, there is no fbx import dialogue. Tried to make to button the switch the hide ui option but that is way beyond my capabilities.

really glad that you are still active in the development. for a non programmer like me to code sth is a disaster, lol.

Keep up the good work, cheers.