The Level Design Book
BookResources
  • The Level Design Book
  • ✨What is level design
  • Book 1, Process
    • πŸ—ΊοΈHow to make a level
    • 🧠Pre-production
      • Pacing
      • Research
      • Worldbuilding
      • Scope
    • πŸ”«Combat
      • Enemy design
      • Encounter
      • Cover
      • Map balance
    • πŸ› οΈLayout
      • Flow
        • Circulation
        • Verticality
      • Critical path
      • Parti
      • Typology
        • Gates
    • 🏠Blockout
      • Massing
        • Landscape
        • Composition
        • Prospect-refuge
      • Metrics
        • Modular kit design
        • Doom metrics
        • Quake metrics
      • Wayfinding
      • Playtesting
        • Player persona
    • πŸ“œScripting
      • (stub) Navigation
      • Doors
    • β˜€οΈLighting
      • Three point lighting
      • D6 lighting
      • Lighting for darkness
    • 🏑Environment Art
      • Shape and color psychology
      • Texturing
      • Storytelling
      • Optimization
    • 🌈Release
  • Book 2, Culture
    • 🦜Level design as culture
    • History of the level designer
    • Zero player level design
    • (unfinished pages)
      • History of architecture
      • Structural engineering primer
      • History of environment art
      • History of furniture
      • History of encounter design
  • Book 3, Studies
    • πŸ”How to study a level
    • Single player studies
      • Undead Burg (Dark Souls 1)
      • Assassins (Thief 1)
      • (STUB) The Cradle (Thief 3)
      • (STUB) Sapienza (Hitman)
      • (STUB) Silent Cartographer (Halo 1)
    • Multiplayer studies
      • Chill Out (Halo 1)
      • (STUB) de_dust2 (Counter-Strike)
    • Real world studies
      • Disneyland (California, USA)
      • (STUB) Las Vegas (Nevada, USA)
  • Book 4, Learning
    • πŸŽ’Notes for educators
    • Project plans
      • Classic Combat
      • (Unfinished WIP pages)
        • Modern Combat
        • Modern Stealth
        • Exercise: Direct Lighting
        • Exercise: Whiteboard 2D
        • Level Design Portfolio
        • Design Test: Adaptation
        • Exercise: Layout
        • Exercise: Verticality
  • Appendix
    • Tools
      • TrenchBroom
    • Assets & Resources
      • Recommended talks
      • Recommended books
      • Quake resources
        • How to package a Quake map/mod
      • File formats
        • FGD file format
        • MAP file format
        • MDL file format
    • Communities
    • About this book / authors
    • License / copyright
Powered by GitBook
On this page
  • Construction
  • Scripting
  • Compatibility / engine pipeline
  • Resources and Community
Export as PDF
  1. Appendix
  2. Tools

TrenchBroom

info and resources for this modern brush-based level editor tool

PreviousToolsNextAssets & Resources

Last updated 11 months ago

(or TrenchBroom 2, or TB) is a free open-source cross-platform 3D level editor with modernized Quake-style brush-based construction and ongoing updates / support. It is widely used across several modding communities as well as commercial projects.

We recommend TB as a decent general purpose 3D level editor tool that potentially works with multiple game engines on Windows, macOS, and Linux.

Construction

TB departs from previous Quake-era level editors to emphasize 3D construction in a single view pane.

Scripting

Compatibility / engine pipeline

Is TrenchBroom a good choice for your game engine? Two aspects to consider:

    • TB's main file format is a Valve variant ("version 220") of text-based Quake .MAP format.

    • Your engine needs some sort of compile tool or plugin to process .MAP files.

    • Some plugins can import compiled .BSP files instead.

    • Worst case scenario -- export brushes to .OBJ but lose all entity data

  • Asset integration: can TB hook into your game assets and display them?

Game / Engine
.MAP support
Asset integration

Godot

common file formats, FGD / WAD via plugin

Unity

common file formats, FGD / WAD via some plugins

Unreal

Quake 1

built-in FGD / WAD / MDL

Quake 2

built-in FGD / WAL / MD2

built-in MD3 / etc but no patch editing support yet (or ever?)

built-in FGD / WAD3 / MDL

Resources and Community

Clipping planes can be 3D, and all brushes are automatically validated for convexity. TB is also great at resizing many brushes at once, with SketchUp-like handling of shared planes and contextual extrusion. For its construction capabilities alone, we recommend TB for building , but it also allows surprisingly detailed modeling and texturing when .

TB currently has only basic tools for levels. It parses a .FGD file for entity definitions, and users can create and edit keyvalues to script gameplay, with some limited autocomplete and colorpicker support. This is suitable for simple Quake-style scripting with entity chains, but lacks the functionality of something like Hammer's extensive entity I/O system.

Outside of Quake modding, most users do their level scripting in the Unity / Unreal / Godot editor itself, and make minimal / no use of TB's entity support. But if you really want to implement custom entity support for your game, you must file and create your own .

.MAP / .BSP support: can your engine import or compile or .BSP files?

To place enemies, doors, or other scriptable game objects, TB uses with special extensions.

TB uses to read a wide variety of common file formats, such as PNG, JPG, FBX, OBJ, etc.

import via () or ()

import via , , , or

import via ()

common file formats, textures via TextUEr ()

compile BSP via

compile BSP via

Quake 3 ()

compile BSP via

Half-Life ()

compile BSP via / VHLT ()

Doom 3 ()

see

needs custom

To build a .MAP importer for other engines, see for info and example code.

If mapping for Quake, ask for help at

If using Qodot, ask for help at or ask at

For specific help with TrenchBroom itself, visit the

see for a full list of game engines and recommended level editors

by David "dumptruck_ds" Spell assumes you're mapping for Quake but the general setup process is similar for mapping for any engine.

by Benoit "Bal" Stordeur is a crucial must-read for intermediate / advanced Trenchbroom construction techniques. Although Stordeur is working in Quake, his advice is applicable to using Trenchbroom for any game.

by SpaceHare lets you easily copy and paste common shapes like cylinders, arches, and staircase geometry from a webpage into the editor.

blockouts
art passing
scripting
write your own .FGD
TrenchBroom game configuration
.MAP files
.FGD file
Asset Importer (AssImp)
MAP file format
Quake Mapping Discord
Qodot Discord
FuncGodot Discord
TrenchBroom Discord
Tools
TrenchBroom manual
Download TrenchBroom on GitHub
TrenchBroom repo on GitHub
TrenchBroom Discord
Intro to TrenchBroom quickstart tutorial videos
Bal's Quake Mapping Tips & Tricks (2022)
TrenchBroom Prefabs
FuncGodot
docs
Qodot
docs
Tremble
Qunity
Scopa
Unity3D-BSP-Importer
HammUEr
guide
guide
EricW-tools
q2tools-220
incomplete
q3map2
almost complete
ZHLT v3.4+
guide
incomplete
RBDoom3-BFG
fork
TrenchBroom
TB's vertex manipulation and automatic brush validation, by Benoit "Bal" Stordeur
TB's visual UV texture editor with "mapversion 220 (Valve)" style skewing, by Benoit "Bal" Stordeur
building a 3D torus using TB's brush tool, clipping tool, and CSG merge by Benoit "Bal" Stordeur
importing .MAP geometry into Godot Engine using the Qodot plugin
Page cover image