I am submitting my code plugin for the UE4 Marketplace.
My project is here:
https://www.dropbox.com/s/r542ohapreds6up/CreatureDragon2D.7z?dl=0
The project builds and runs just fine when the user double clicks on the .uproject file and brings up the UE4 Editor. Everything compiles through and works. The reviewers have also confirmed this works on their end.
However, for my submission process, the reviewers had issues building it from command line with their arguments run from the terminal:
Engine\Build\BatchFiles\RunUAT.bat BuildPlugin -Plugin=[Path to .uplugin file, must be outside engine directory] -Package=[Output directory] -Rocket
This results in compiler errors complaining of certain header files not found. My plugin has an extra folder called ThirdParty that contains extra code and headers. In order to make sure the UE4 BuildTool finds those proper ThirdParty Headers, I have already put in code there to add in the extra directories ( in CreaturePlugin.Build.cs ):
**// Include path
PublicIncludePaths.Add(Path.Combine(ThirdPartyPath, "CreatureLib", "Includes"));**
This definitely works since as I mentioned before, the project will build + run properly when opening up via the normal process of clicking on the uproject file and running the UE4 Editor.
Unfortunately it fails from the custom command line build.
So my question now is what else am I missing here to make the command line build the reviewers sent me go through?
It is obvious the C++ compiler is not having the correct header paths included during the final step of the build.
As far as I am aware of, the C# script is the only place I can specify the header paths since UE4 uses its own build system.
Please advice me on the steps to do next. Thanks!
Update: I have also tried putting in a FilterPlugin.ini with the text:
[FilterPlugin]
/ThirdParty/…
in the Config directory of the Plugin. However the build still fails from the commandline. Please let me know what else I need to do to fix this.