Import static mesh without editor via C ++

what I want to do ?

I want import .obj file without open Editor. I read factory.cpp FbxFactory.cpp. I found the function FactoryCreateBinary() and i want use this function without ImportUI. But for that, I need to include Fbximport.h.
This file fail at compile.

My Problem:

1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(120): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘NormalImportMethod’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(120): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C2653: ‘EVertexColorImportOption’ : n’est pas un nom de classe ni d’espace de noms
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘VertexColorImportOption’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(144): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘AnimationLengthImportType’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(144): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘NormalImportMethod’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘FBXNIM_ImportNormals’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘FBXNIM_ImportNormalsAndTangents’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(158): error C2065: ‘NormalImportMethod’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(158): error C2065: ‘FBXNIM_ImportNormalsAndTangents’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(164): error C2065: ‘AnimationLengthImportType’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(164): error C2065: ‘FBXALIT_ExportedTime’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(120): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘NormalImportMethod’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(120): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C2653: ‘EVertexColorImportOption’ : n’est pas un nom de classe ni d’espace de noms
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘VertexColorImportOption’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(144): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘AnimationLengthImportType’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(144): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘NormalImportMethod’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘FBXNIM_ImportNormals’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘FBXNIM_ImportNormalsAndTangents’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(158): error C2065: ‘NormalImportMethod’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(158): error C2065: ‘FBXNIM_ImportNormalsAndTangents’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(164): error C2065: ‘AnimationLengthImportType’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(164): error C2065: ‘FBXALIT_ExportedTime’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(701): error C2653: ‘EVertexColorImportOption’ : n’est pas un nom de classe ni d’espace de noms
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(701): error C2061: erreur de syntaxe : identificateur ‘Type’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(701): error C2653: ‘EVertexColorImportOption’ : n’est pas un nom de classe ni d’espace de noms
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(701): error C2061: erreur de syntaxe : identificateur ‘Type’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(120): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘NormalImportMethod’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(120): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C2653: ‘EVertexColorImportOption’ : n’est pas un nom de classe ni d’espace de noms
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘VertexColorImportOption’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(123): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(144): error C2146: erreur de syntaxe : absence de ‘;’ avant l’identificateur ‘AnimationLengthImportType’
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(144): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque : C++ ne prend pas en charge int par défaut
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘NormalImportMethod’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘FBXNIM_ImportNormals’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(153): error C2065: ‘FBXNIM_ImportNormalsAndTangents’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(158): error C2065: ‘NormalImportMethod’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(158): error C2065: ‘FBXNIM_ImportNormalsAndTangents’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(164): error C2065: ‘AnimationLengthImportType’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(164): error C2065: ‘FBXALIT_ExportedTime’ : identificateur non déclaré
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(701): error C2653: ‘EVertexColorImportOption’ : n’est pas un nom de classe ni d’espace de noms
1>D:\Unreal Project\UnrealEngine-release\Engine\Source\Editor/UnrealEd/Private/FbxImporter.h(701): error C2061: erreur de syntaxe : identificateur ‘Type’

My Question:

How I can fix dependency problem of this file ?

I forgot #include “UnrealEd.h”

It’s fine, I compile

hey,
i also tried that from c++.
Instead of trying to code my own class i was trying to modify the editor code.
it was on v4.1 and then it started to crash for some unknown reason .
I did not get that much time to debug.

Can u post your code snippets?

I also interesting how to do it

I am working on it at the moment so I don’t think post code immediately. but I would surely do documentation to explain how I did

I’m still looking how do so I would like your opinion to progress on it.

+1 as interested, how to do it.

i will try to post my changes. but for that i have to dig into the source of v4.1.
need some free time

Hi! would you mind posting your code for the c++ import? I am trying to do the same thing but am getting lost in the editor source code.
Thanks!

I am working on that way as well, to use FbxFactory->FactoryCreateBinary to import “Obj” files. But don’t know how to do that. How about your solution now.

its working super. but i moved to the solution provided by epic. they have added a commandlet. using that u can import any type of asset without opening editor.
most probably its name was “ImportAssetsCommandlet.h”