page_title: Cube 2: Sauerbraten
section_title: Real-time editing
hierarchical_section_title: Cube 2: Sauerbraten / Features / Real-time editing
caption_attribution_description: English: Sauer subdivision.
context_page_description: Cube 2: Sauerbraten is a cross-platform, Quake-like first-person shooter that runs on Microsoft Windows, Linux, FreeBSD, OpenBSD, and Mac OS X using OpenGL and SDL. The game features single-player and multiplayer gameplay and contains an in-game level editor. The game engine is free and open-source software, under the zlib License, with commercial support available from the developer's business counterpart, Dot3 Labs. The game media is released under various non-free licenses. The aim of the project is not to produce the most features and highest-quality graphics possible, but rather to allow map-editing to be done in real-time within the game, while keeping the engine source code small and elegant.
context_section_description: Cube 2: Sauerbraten uses a 6-directional heightfield (or octree) world model. An octree, in Sauerbraten, is a cube that can be split into eight smaller cubes; those smaller cubes are also octrees, and can be subdivided further. This allows much more complex level geometry and easier editing.
  Each cube-shaped node in the octree represents a renderable volume, or a type of Marching cube, which are referred to as a cube, where each edge of this cube can be lengthened or shortened to deform the cube into a variety of other shapes. Corners of cubes can also be "pushed" or "pulled" to create crude curves. The what you see is what you get realtime editing has enabled level designers to add a lot of detail to maps, while reducing the time spent on actual creation. This is in contrast to traditional modern polygon soup 3D engines which take a model generated as an essentially random batch of triangles from an external modelling program and attempt to spatially subdivide the model's triangles after the fact by splitting them to fit into tree structures, such as a BSP tree or even an octree, that require costly pre-processing to build. Cube 2's novelty thus lies in that the world representation is the octree, or Marching cubes, structure itself, from which efficient triangle batches are generated for the graphics processing unit to render, without need for expensive and time-consuming pre-processing.
caption: An example of a primitive cube subdivision
exif: {}