Build
System
One command, every target, reproducible bits. Distributed compilation across your studio network turns a full rebuild into a coffee break rather than a sprint.
What a build should feel like
A build is a function from a source tree, a content set, and a target configuration to a signed package. Given the same inputs, the output is the same bytes. That is the contract. Crowe Build System enforces it across C++ code, shaders, and cooked content, on every supported platform.
Distributed compilation runs across any machine in your studio with the build agent installed. Jobs are hashed and cached, so once a file has been compiled on one machine the rest of the studio skips straight to linking. A full cold rebuild that would take an hour on one workstation finishes in three minutes on a ten person team.
Packaging handles the storefront details. Signing, age rating metadata, achievements manifest, and platform specific assets are declared once and the builder emits a submission ready package for each target.
What the builder does for you
Distributed C++ and shader build
A work queue runs across the network. Compile jobs are hashed on their preprocessed input, the compiler version, and the flags. A cache hit returns the object file without touching the compiler.
- Agent runs on any workstation on the LAN
- Content addressed object and shader cache
- Cross compile for every supported target
- Deterministic given pinned toolchain
Storefront signed packages
One configuration emits a signed build for every storefront. The packager handles the small annoying details, age rating metadata, achievements manifest, icon sizes, and regional builds, from a single declaration.
- PlayStation, Xbox, Switch, Steam, Epic
- iOS App Store and Google Play
- Signing and notarization in pipeline
- Submission ready metadata
Block level binary diffs
Patches between two packaged builds generate at the block level, not the file level. A code only patch for a 40 GB game is typically a few megabytes rather than a gigabyte.
- Block level diff using rolling hash
- Chunked delivery with resumable downloads
- Signed manifests with integrity check
- Rollback safe atomic install
Plays nicely with CI
The same command line the engineer uses locally runs on CI. Jobs report structured progress that GitHub Actions, TeamCity, and Jenkins can surface as native check runs. Artifact upload is built in.
- One command local and remote parity
- Structured progress for CI consoles
- Artifact upload with manifest
- Incremental CI using the shared cache
Build timings on a mid sized codebase
Roughly 1.8 million lines of C++, 6,400 shaders, 240 gigabytes of content. Ten person team sharing a LAN cache.
Works with
Asset Pipeline
The content side of the same deterministic story. Shares the cache backend with the code build.
Debugging Suite
Attach to any packaged build the same way you attach to a local editor session.
Release notes
Recent changes to the builder, the cache format, and the storefront plug ins.
Ship a build in an afternoon
The SDK includes a sample configuration that packages for Windows, PlayStation, and Xbox from a single command. Start there.