Download

Substance plugin and git. Getting project error.

I’m using BitBucket and it’s working great. However my artist added the Substance plugin and a couple textures to the project. When I pulled and opened I’m getting a message:

“Project modules are missing or out of date. Would you like to recompile them?”

So I select yes and it does some compiling of PCH.SubstanceCore stuff. It gives me an error after some time:

“Game code couldn’t be compiled. Continue trying to start anyway?”

When I do that substance is disabled and no materials from it are used.

Any ideas on how I can solve this?

Make sure it is the right plugin for your version of UE4. A plugin compiled for 4.2 wont work in 4.3 so that may be the case.

The only downloadable plugin at the moment is for 4.3 only, any versions before that need to download the entire engine from an Allegorithmic UE4 fork. on github.

However the new plugin recently released for 4.3, please make sure you are putting the plugin into the …\PROJECT_NAME\ folder, NOT in the ProgramFiles\UnrealEditor\engine\plugins. The following is taken from their website:

You need to add the plugin to each project you intend to use the substance files in. For more details see the the webpage at:
http://www.allegorithmic.com/substance-ue4

So when I compile from VS I get the following error:

error LNK1181: cannot open input file ‘C:\Users\Piller187\Documents\game\Game\Plugins\Substance\Source\SubstanceCore/lib/win32-msvc2013-64/release_md/Substance.lib’ C:\Users\Piller187Documents\game\Game\Intermediate\ProjectFiles\LINK

So I don’t have a win32-msvc2013-64 folder or subfolders. The guy who originally put Substance in does because the Substance folder has it when he copied it locally. However he pushed the project to BitBucket, but that folder and the lib are not on BitBucket. He uses SourceTree and I was thinking .lib files must be getting ignored but when we went to Settings in SourceTree the .gitignore doesn’t say anything about lib.

@DotCam Yeah, it’s added right off the PROJECTNAME folder. I think it’s git via BitBucket ignoring lib files but can’t find out where it’s doing that or how to fix it.

Which version of the engine are you running?

I’m using 4.3

That is very strange… has the plugin worked at all or did you just install it now and can no longer use it since adding the plugin?

Is there any way to manually upload the files to bitbucket? (Sorry I have not used the service before) but is looks from what I gather to be similar to github… Would it be worth trying to delete the plugin then sending a commit to bitbucket to make sure it disappears, then re-add the files and do another commit? Just to rule out any issues occurring in the files transfer…

If that doesn’t help, I’m sorry but I will have to leave this for someone else more knowledgeable with git/bitbucket (I know the basics, but this is beyond me I’m afraid).

Sorry bud, hopefully someone else will chime in shortly… :slight_smile:

EDIT: Just wanted to add, if you get no luck here, also post this issue into the Substance For UE4 forum over on allegorithmic, the link below should take you there.

Hope you get this worked out soon!

I created the project and pushed. He pulled, added Substance plugin folder. Opened the editor and it was working fine for him. He them committed and pushed. I then pulled and started getting this error. We checked bitbucket after it said this lib file was missing and such enough it’s not on bitbucket which means it’s not on my machine either. I can manually copy the plugin folder locally to mine, and all the other team members, and it would solve it, but if new versions come out we’ll all have to remember to do this. I’d prefer only 1 person has to and the rest would just get it from bitbucket when we pull recent. Thanks for you efforts DotCam. I’ll try the remove/readd process.

Anyone have ideas why git is not adding this?

Hi Piller187,

We provide a download for the Substance plugin here: Plugins | Substance 3D

I would first recommend you start by comparing the files between what has been uploaded in bitbucket and what is provided by us. You definitely need the Substance.lib file to compile the project for example. Sometimes .lib files end up in .gitignore and it may not have been added.

Additionally, if you are using a github version of the Unreal Engine (not the 4.3 version as provided by the launcher), I recommend not uploading the Binaries folder as those binaries are built against the 4.3 version in the launcher.

Hey Josh,

We are using the 4.3 from launcher. I also looked at this persons .gitignore and he didn’t have anything in there. I’ll compare the files just to make sure it wasn’t more files getting ignored as well.

[EDIT]
So the binaries and this win lib folder were the only 2 that aren’t added. I’m fine with binaries not getting added as I’m sure UE4 will compile that from source but clearly it needs the lib to do that. Man I have to think git is somewhere ignoring DLL’s and Lib’s but I cant find it anywhere.

[EDIT2]
So I copied the substance folder locally. The 2 dll’s and 1 lib show up in my working copy in SourceTree. I add them. Commit, push and I see them in BitBucket now. Will have to have this other guy try that again and see if it’s just his PC that isn’t allowing it.

Thanks for this- I assumed I had to build it from source, because somewhere else I found the GitHub link. But now I have it working.

Glad to hear you both have made good progress :slight_smile:

How do I “make sure it’s the right plugin”?