Is there a way to exclude an entire folder from builds on a specific platform?

We’re making a game that has over 10GB of video clips. One platform we’re publishing on doesn’t support 4k video, while the rest do, so that platform requires us to have a 1080p version of each video. That means we’ll have a 10GB+ folder of 4k videos that this platform doesn’t need as well as a 10GB+ folder of 1080p videos that no other platform needs.

Is there a way to keep from packaging both folders into every build? I suppose that for our FINAL build we could make copies of the project and manually delete the unneeded folder(s) before build, but I’m hoping there’s some built-in system we’re not aware of that we could use.

I usually migrate to a second project
it leaves out stuff that isn’t actually in the levels
you can also
in explorer
move those files out manually
fire up the project
right click content and fix re-directors
then build for the second platform.

perhaps a script that moves one or the other movies folders into the build path, builds, and then moves it back out? (Of course make sure they’re backed up in your VCS or else use copy/delete instead to be safe.)

I don’t remember the specific names, but in the DefaultEngine ini there are entries for directories to always cook and directories to never cook. You can use some build system trickery to alter these at the build system level for each platform.

1 Like

Thank you. I didn’t know the ability to mark a directory as “never cook” existed. That’s probably enough to solve my issue. During development I can include both folders in all builds, that’s not an issue. When I’m ready to ship I didn’t want to have to deal with manually deleting folders and such, but being able to manually set one folder to be cooked and the other to not be makes this much easier. Thanks.

yeah it’s pretty easy to throw together some build scripts that modify the base ini, perform a build, then put it back to normal when done. Or can just do it manually, too.