BRUTAL

    Built for games that are hard to make

    BRUTAL is a C# framework developed by Ahwoo. Build a game directly or use it as the foundation for your own engine, with access to native APIs and control over the systems your game needs.

    Free and open source under the BRUTAL licence.

    Targets
    • WINDOWS
    • LINUX
    • MACOS

    Every package, the same three targets.

    Built with BRUTAL

    RimWorldLudeon Studios · Update 1.7

    Ludeon built Waylith, RimWorld's new engine, using BRUTAL as its foundation. The move from Unity brought reported performance improvements of 2 to 4 times, with the vast majority of existing mods remaining compatible.

    performance in Ludeon's tests
    2–4×
    late-game colony against 1.6
    2.2×
    to load a 1,500-mod pack
    14 → 6 min
    RimWorld 1.7 running on the Waylith engine
    Why BRUTAL exists

    An engine built for every game is optimal for none.

    BRUTAL began as a small collection of libraries and grew over four years of development. The goal was to give teams the foundations to build games whose requirements were difficult to fit into a general-purpose engine.

    Today, developers use it both to make games directly and to build engines of their own.

    You have the source code to understand how the framework works, change it and maintain the technology your game depends on.

    01

    Built for scale and precision

    A spacecraft travelling between planets needs different systems from one approaching another vessel. Kitten Space Agency uses BRUTAL to build around both, with precise coordinates, vast distances and complex simulation requirements. You decide how positions are calculated, how objects are rendered and where precision matters.

    02

    A framework, not an engine

    BRUTAL provides low-level foundations without choosing your game's architecture for you. Use its Vulkan bindings to write your own renderer, build a game directly with the framework or use it as the foundation for a separate engine, as Ludeon did with Waylith.

    03

    Control where it matters

    When something goes wrong, you can inspect the code, investigate the problem and change the systems involved. That control comes with responsibility. BRUTAL makes extensive use of unmanaged memory and unsafe code where appropriate. You are responsible for the systems you build and maintain.

    04

    The interop layer at the core

    BRUTAL connects modern C# and .NET to native APIs and high-performance C/C++ libraries. Supporting libraries cover mathematics, memory management, strings, job scheduling, logging and localisation, with a focus on reducing allocations and unnecessary overhead.

    05

    Modding on your terms

    You decide how your game supports mods and which systems they can access. Ludeon's move to Waylith shows what careful engineering can preserve: the vast majority of RimWorld's existing mods remained compatible following the engine change.

    BRUTAL by design

    The name is a warning.

    BRUTAL is intended for experienced programmers who want to make their own architectural decisions and are prepared to build and maintain the systems their games require. Its scope is deliberately focused. The team prioritises low-level functionality for demanding games, with contributions assessed against that purpose.

    Free and open source

    Building a game that is hard to make?

    The source is public under the BRUTAL licence.