QBSP(1)                                                                QBSP(1)



NAME
       qbsp - Compile a Quake BSP file from a MAP source file


SYNOPSIS
       qbsp [OPTION]... SOURCFILE [DESTFILE]


DESCRIPTION
       qbsp  is  a tool used in the creation of maps for the  id Software game
       Quake. qbsp takes a .map  file  as  input  and  produces  a  .bsp  file
       playable  in  the  Quake  engine.  If the DESTFILE argument is not sup-
       plied, the output filename will be chosen by stripping the file  exten-
       sion (if any) from SOURCEFILE and appending the .bsp extension.


OPTIONS
       -nofill
              Doesn't perform outside filling

       -noclip
              Doesn't build clip hulls

       -noskip
              Doesn't remove faces using the 'skip' texture

       -onlyents
              Only updates .map entities

       -verbose
              Print out more .map information

       -noverbose
              Print out almost no information at all

       -splitspecial
              Doesn't combine sky and water faces into one large face

       -transwater
              Computes portal information for transparent water (default)

       -notranswater
              Computes portal information for opaque water

       -transsky
              Computes portal information for transparent sky

       -oldaxis
              Uses original qbsp texture alignment algorithm

       -forcegoodtree (experimental)
              Force  use  of  expensive  processing for SolidBSP stage.  Often
              results in a more optimal BSP file in terms of file size, at the
              expense of extra processing time.

       -bspleak
              Creates a .por file, used in the BSP editor

       -oldleak
              Create an old-style QBSP .PTS file (default is new)

       -nopercent
              Prevents output of percent completion information

       -bsp2  Create  the output BSP file in BSP2 format.  Allows the creation
              of much larger and more complex maps than the  original  BSP  29
              format).

       -2psb  Create the output BSP file in 2PSB format.  This an earlier ver-
              sion of the BSP2 format, supported by the RMQ engine  (and  thus
              is  also known as the BSP2rmq or RMQe bsp format).  original BSP
              29 format).

       -leakdist [n]
              Space between leakfile points (default 2)

       -subdivide [n]
              Use different texture subdivision (default 240)

       -wadpath <dir>
              Search this directory for wad files (default is cwd)


SPECIAL TEXTURE NAMES
       The contents inside a brush depend on the texture name(s)  assigned  to
       it.

       By  default  brush  contents are solid unless they have a special name.
       Names beginning with an asterisk are liquids.  A prefix of *slime indi-
       cates  slime, *lava is for lava and anything else beginning with * will
       have contents as water.

       All faces of a brush must have textures which indicate  the  same  con-
       tents.  Mixed content types will cause qbsp to print an error and exit.


   SKIP
       Any surfaces assigned a texture name of skip will be compiled into  the
       bsp  as  invisible  surfaces.  Solid surfaces will still be solid (e.g.
       the play can't walk or shoot through them) but they will not be  drawn.
       Water,  slime and lava surfaces can be made invisible using the texture
       names *waterskip, *slimeskip and *lavaskip respectively.


   HINT
       Hint surfaces cause a bsp split and portal to be generated the  on  the
       surface  plane,  after which they are removed from the final bsp - they
       are neither visible, nor structural.  Strategic placement of hint  sur-
       faces  can  be used by a map author to optimise the PVS calculations so
       as to limit overdraw by the engine (see also: vis(1)).

       Use a texture with the name hintskip on any surfaces of  a  hint  brush
       which  you  don't want to generate bsp splits or portals.  All surfaces
       of a hint brush must use either the hint or hintskip texture name.


DETAIL BRUSH SUPPORT
       This version of qbsp supports detail brushes which are similar in  con-
       cept to Quake 2's detail brushes.

       To  be  compatible  with existing Quake 1 mapping tools, detail brushes
       can be added by creating an entity with classname "func_detail".   When
       qbsp  reads  the  map  file,  it  will  add  any  brushes included in a
       func_detail entity into  the  worldspawn  as  details  and  remove  the
       func_detail  entity.   Any  number  of func_detail entities can be used
       (useful for grouping) and all included brushes will  be  added  to  the
       worldspawn.

       Here  is an example entity definition suitable to add the the .QC files
       used by BSP Editor:

           /*QUAKED func_detail (0.5 0.5 0.9) ?
           Detail brushes add visual details to
           the world, but do not block visibility.
           func_detail entities are merged into
           the worldspawn entity by the qbsp compiler
           and do not appear as separate entities in
           the compiled bsp.
           */

       For WorldCraft in .FGD format (untested):

           @SolidClass color(128 128 230) = func_detail: "Detail" []

       For Radiant in .ENT format:

           <group name="func_detail" color="0 .5 .8">
           Detail brushes add visual details to the world, but do not
           block visibility. func_detail entities are merged into the
           worldspawn entity by the qbsp compiler and do not appear as
           separate entities in the compiled bsp.
           </group>

       What should be written to the .map file is a simple entity with one  or
       more brushes. E.g.:

           {
           "classname" "func_detail"
           {
           ( -176  80  0 ) ( -208  80  0 ) ( -208  48  0 ) COP1_1 0 0 0 1.0 1.0
           ( -192 -80 64 ) ( -208 -80  0 ) ( -192 -64 64 ) COP1_1 0 0 0 1.0 1.0
           ( -176 -80  0 ) ( -192 -80 64 ) ( -176 -64  0 ) COP1_1 0 0 0 1.0 1.0
           ( -16   48  0 ) (  -16  64 64 ) (    0  48  0 ) COP1_1 0 0 0 1.0 1.0
           ( -16   64 64 ) (  -16  80  0 ) (    0  64 64 ) COP1_1 0 0 0 1.0 1.0
           }
           }

       When  qbsp  detects  detail  brushes, it outputs a modified portal file
       format with the header PRT2 (default is PRT1).  This portal  file  con-
       tains  extra information needed by vis to compute the potentially visi-
       ble set (PVS) for the map/bsp.  So you will also need a vis util  capa-
       ble of processing the PRT2 file format.


MAP COMPATIBILITY
       In addition to standard Quake 1 .map files, TyrUtils QBSP is compatible
       with:


       o      Floating point brush coordinates and texture alignments

       o      Valve's 220 map format as produced by the Hammer editor

       o      Extended texture positioning as supported by the QuArK editor

       o      Standard Quake 2 map format (leading paths in texture names  are
              stripped and any extra surface properties are ignored)


AUTHOR
       Written by Kevin Shanahan (aka Tyrann)
       Based on source provided by id Software and Greg Lewis
       http://disenchant.net


REPORTING BUGS
       Please send bug reports to tyrann@disenchant.net.
       Improvements to the documentation are welcome and encouraged.


COPYRIGHT
       Copyright (C) 2013 Kevin Shanahan
       Copyright (C) 1997 Greg Lewis
       Copyright (C) 1997 id Software
       License GPLv2+:  GNU GPL version 2 or later
       <http://gnu.org/licenses/gpl2.html>.

       This  is  free  software:  you  are free to change and redistribute it.
       There is NO WARRANTY, to the extent permitted by law.


SEE ALSO
       light(1) vis(1) bspinfo(1) bsputil(1) quake(6)



TYRUTILS                 2013-12-24 v0.15-17-g84caccd                  QBSP(1)
