Skip to content

Commit

Permalink
updating readme
Browse files Browse the repository at this point in the history
  • Loading branch information
nievesj committed Feb 27, 2024
1 parent 632f083 commit 67f398f
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,54 @@
# FASTBuild For Unreal Engine v1.22

This version of FASTBuild has been modified to work with UrealEngine 4.27 and 5.3 and it follows the amazing work done by [NineWorldsStudios](https://github.com/NineWorldsStudios/FASTBuild).

## How do I compile this thing?!

Easy! The path with least friction is to use Visual Studio 2022, any version works, I used Community Edition.
* Locate file [VS2022.bff](External%2FSDK%2FVisualStudio%2FVS2022.bff)
* In there look for `.VS2022_Version = '14.38.33130'`
* This number `14.38.33130` is important as it needs to map to your installed SDK version, for example C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130
* It's recommended to use the same version as the .bff, but if your number is higher start from there by modifying the .bff file.

To build FASTBuild a version of it is required so head to the [downloads section](https://www.fastbuild.org/docs/download.html) and grab the latest one.

* For simplicity I moved the downloaded FBuild.exe to `FASTBuild\Code` where [fbuild.bff](Code%2Ffbuild.bff) is located.
* Open a windows terminal on path `FASTBuild\Code` then type `.\FBuild.exe`
* That should start the build process and it should be done in a few minutes.
* If you have any errors it's more than likely they are related to the installed SDK version or any missing libraries.

## Unreal Engine Setup

UE needs a few minor changes to be able to work with FastBuild and the Dashboard, you can browse this [changelist](https://github.com/nievesj/UnrealEngine/commit/1ff1e3113fe19e9e531276698dff968e4bab1ba9#diff-94843f776dd2b8dedfa47723cf154f0bd9dab3dc94cc464fceb7e1a6ab735315) to see the modifications. The most important one is in [FastBuildUtilities.cpp](https://github.com/nievesj/UnrealEngine/commit/1ff1e3113fe19e9e531276698dff968e4bab1ba9#diff-94843f776dd2b8dedfa47723cf154f0bd9dab3dc94cc464fceb7e1a6ab735315) as it adds a missing dll required to build shaders.

## Sample BuildConfiguration.xml

The final step is activating FASTBuild by modifying the BuildConfiguration. This is an example of the xml I use.

```
<?xml version="1.0" encoding="utf-8" ?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
<bAllowFASTBuild>true</bAllowFASTBuild>
<BuildConfiguration>
<MaxParallelActions><THE MAX NUMBER OF LOCAL LOGICAL CORES YOU WANT TO USE></MaxParallelActions>
</BuildConfiguration>
<FASTBuild>
<bEnableCaching>true</bEnableCaching>
<CacheMode>ReadWrite</CacheMode>
<FBuildBrokeragePath>\\NETWORK_PATH_TO\FASTBuildBrokerage</FBuildBrokeragePath>
<FBuildCachePath>\\NETWORK_PATH_TO\FASTBuildCache</FBuildCachePath>
</FASTBuild>
</Configuration>
```

## FASTBuild Dashboard
https://github.com/nievesj/FASTBuild-Dashboard
This is a companion app that shows a visual representation of the build progress. If you're familiar with IncrediBuild, it does roughly the same thing.

------------------

# FASTBuild

FASTBuild is a build system for Windows, OSX and Linux, supporting distributed compilation and object caching. It is used by many game developers, from small independent teams to some of the largest studios in the world.
Expand Down

0 comments on commit 67f398f

Please sign in to comment.