Download

Is there any way to eliminate the Visual Studio dependency for artists, etc.?

We have a C++ (not Blueprints) project. I need artists and designers to be able to open this project in UnrealEd and do, you know, art and design. Currently they can’t open the project at all because they don’t have Visual Studio installed. It seems ridiculous that we have to buy a bunch of Visual Studio licenses for artists and designers who will never, ever launch Visual Studio.

Am I missing something, or is this really the way this works?

It seems like all that should really be necessary here is the C++ buildchain, not the whole IDE. Is there some way to get just the buildchain part of it, without incurring the need to license the entire application for every single machine? (Note that we do not qualify for VS Community edition per the VS license agreement.)

If you are checking in your binaries (literally the Binaries folder) and distributing those, they shouldn’t need Visual Studio at all.

As said above, add the ‘Development Editor’ binaries to source control.

If using Perforce, you can set the files to be ‘Always Writeable’ in the workspace, so programmers can continue to compile code without the need to check-out the files. A programmer can check out and submit the files when they are ready to send out the chnages to artists.

This took a while for me to get back around to, but it looks like it’s going to work… I think? I didn’t want to check in the entire Binaries folder though, because there are massive .pdb files in there, plus DLLs and such for multiple build configurations, which is all debug stuff nobody else needs. So I added this block to my .gitignore:


/Binaries
!/Binaries/Win64/MyGameEditor.target
!/Binaries/Win64/UE4Editor.modules
!/Binaries/Win64/UE4Editor-MyGame.dll

This got a bit more “interesting” since we’re also using FMOD, which has a bunch of its own binaries right out of the box that do need to be distributed, but generates a bunch more files in that same folder when I do e.g. debug builds, and those new files don’t need to be distributed. There’s further pollution in the plugin’s Intermediate folder as well. So I ended up doing this:


/Plugins/FMODStudio/Binaries/Win64/*.pdb
/Plugins/FMODStudio/Binaries/Win64/*DebugGame*
/Plugins/FMODStudio/Intermediate/Build/Win64/UE4/*
!/Plugins/FMODStudio/Intermediate/Build/Win64/UE4/Inc
/Plugins/FMODStudio/Intermediate/Build/Win64/UE4Editor/*
!/Plugins/FMODStudio/Intermediate/Build/Win64/UE4Editor/Inc

It’s not the most user-friendly gitignore pattern in the world, but it did get me to a point where I could do a fresh clone of the project repo and open the Unreal project without any build prompts. I haven’t yet had a chance to test this on a machine that actually lacks Visual Studio, but the absence of build prompts suggests that it should work fine.

Thanks for the responses.

Hmm, you shouldn’t ever have to submit anything from the Intermediate folders, just the binaries folder should be enough.

I could be wrong, but the Plugins/FMODStudio/Intermediate/Build/Win64/UE4[Editor]/Inc folders appear to contain a boatload of dependent headers (this is immediately after extracting the plugin, before building anything). That does seem to me to be a strange way of organizing their files, but… /shrug?

Hm, I’m guessing the binaries are not cross-platform…? I built binaries on my Windows machine and checked them in, and my artist on a Mac still can’t open the project; his log shows a failed attempt to compile via Xcode (which he doesn’t have installed because, y’know, artist) which then kills editor startup.

This workflow is a pain.

Correct. Mac will need to be built by a Mac machine and checked in. If you can, get everyone on the same OS with similar machine specs - it’ll save you lots of heartache.

The binaries are native programs, so yeah, a Windows program generated by Visual Studio will not run on a Mac. Your programmer needs to compile Mac binaries as well and check those in for the artists.

Yeah, so this is gonna suck on this mixed-OS team I need to work with, and putting everybody onto one OS isn’t currently an option. :expressionless:

I guess I could have all the Mac users install Xcode so they can compile locally, since Xcode is free. That’s better than requiring all Windows users to install Visual Studio and pay for pro licenses. It’s still sub-optimal though because no programmers are Mac users, so troubleshooting any Mac compile errors will be a pita.