FBX SDK with Unreal Engine 4.

I have written a simple fbx importer using the c++ FBX SDK. I am attempting now to insert it into an Unreal engine  game project.

As a standalone application, it works fine, but when I add it to the Unreal c++ project, I get unresolved externals. This, i believe, is due to the lib not being linked.

For the standalone app, I followed this guide:

http://help.autodesk.com/view/FBX/2015/ENU/?guid=__files_GUID_6E7B1A2E_584C_49C6_999E_CD8367841B7C_htm

For some reason the unreal project settings are less than a usual visual studio project, so I can't seem to add the library linking that the fbx sdk requires. (see image)

How can i add the library to this project?
Or, if I create my importer as a DLL function, can I call it from this project without linking the lib? Or will I strike the same issue?

Sorry if this is confusing, please ask any questions and I will clear it up.


visual studio missing properties?
chemicalx001Asked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

sarabandeCommented:
what is the vs version?

did you add the library as described in step 14 of your guide?

can you post the error messages with the unresolved externals?

Sara
0
chemicalx001Author Commented:
Hi Sara, thanks for your response. As in the image above, the problem is that the 'Linker' section of the properties panel is missing. So I am unable to link the library.

I guess this is an unreal engine specific thing, just wondering if you know how I can get around it.

visual studio 2013...
0
sarabandeCommented:
the problem is that the 'Linker' section of the properties panel is missing.

it looks as if your project is not a dll project but a (static) library object. the latter only is a collection of object modules (means compiled functions) and therefore the linker section is missing. if you add the static library to a dll or application project, that parent project would be responsible for providing the missing "externals".

i assume you wanted to create a dll project where the final output is an executable dll which only could build successfully if all external functions were resolved. therefore it has a linker section and you can add sdk libraries as described in your documentation.

Sara
0
chemicalx001Author Commented:
Ah I see. So likely the Unreal ENGINE source code project should hold the external libs, and my game code will reference them through that.

Thanks!
0
sarabandeCommented:
static library projects are the exception since their value is limited. the modules in the library are highly dependent on the projects where the library was used, you only could use static libraries with projects that are very similar.

dll projects have the advantage that the dll unit is an executable where the exported functions are mostly independent of the caller's environment. for example you could update the dll with a newer version and don't have to rebuild the applications as long as you don't change the interface of the exported functions. but the price is that a dll has a higher complexity. so you may try to use the static libraries with your first game project and move the decision whether to turn it to a dll when you are making your second project.

Sara
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C++

From novice to tech pro — start learning today.