Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
glbsp(1)		    General Commands Manual		      glbsp(1)

       glbsp - GL Nodes	builder	for DOOM ports

       glbsp [options] input.wad ... [-o output.wad]

       glbsp @argfile.rsp

       glBSP  is  a  nodes  builder specially designed to be used with OpenGL-
       based DOOM game engines.	 It adheres to the "GL-Friendly	Nodes"	speci-
       fication, which means it	adds some new special nodes to a WAD file that
       makes it	very easy for an OpenGL	DOOM engine to	compute	 the  polygons
       needed for drawing the levels.

       Options	can  begin  with one or	two dashes.  Running glBSP without any
       options will show an informational screen.

       -help  Show a option summary screen.

       -q     Quieter output.  Information about each level (like  the	number
	      of  linedefs, blockmap size, etc)	is not displayed when this op-
	      tion is given, and a few other messages are skipped.   Important
	      messages,	 like  failure	to  build  a  certain level, are still

       -fast  Lets glBSP can cheat a bit and re-use the	original node informa-
	      tion to create the GL nodes, doing it much faster.  Use this op-
	      tion to enable this feature.  The	message	"Using original	 nodes
	      to speed things up" will be shown.

	      The  downside to reusing the original nodes is that they may not
	      be as good as the	ones glBSP normally creates, e.g. the  special
	      checks  to  minimise slime-trails	don't kick in, and the -factor
	      value doesn't have much effect.

       -warn  Shows extra warning messages, which detail  various  non-serious
	      problems	that  glBSP  has  while	analysing the level structure.
	      Often these warnings show	a real problem in the  level  (e.g.  a
	      non-closed  sector or invalid sidedef), so they are worth	check-
	      ing now and then.

	      glBSP usually detects if the normal node info (i.e.  the	non-GL
	      variety)	is  present: when yes, it is left untouched, otherwise
	      glBSP creates it.	 This option forces glBSP to replace the  nor-
	      mal node data with newly constructed nodes.

       -factor _num_
	      Changes the cost assigned	to seg splits.	Factor can be any num-
	      ber greater than 0, larger values	make seg  splits  more	costly
	      (and  thus glBSP tries harder to avoid them), but	smaller	values
	      produce better BSP trees.	 The default value is known  to	 be  a
	      good compromise.

       -pack  Pack sidedefs, by	detecting which	sidedefs are identical and re-
	      moving the duplicates, producing a smaller PWAD.

	      NOTE: this may make your level a lot harder to edit!   Therefore
	      this  is most useful when	producing the final WAD	for public re-

	      Normally glBSP will create an simple REJECT map for each	level.
	      This options prevents any	existing REJECT	map, such as one time-
	      consumingly built	by a  dedicated	 reject	 builder,  from	 being

       The following options are rarely	needed:

       -v1 .. -v5
	      Specify  the version of the "GL Nodes" spec to use (either 1, 2,
	      3	or 5).	V1 is considered obsolete now.	 The  default  is  V2.
	      Giving  -v3  or -v5 will force certain lumps to use the new for-
	      mats, but	is only	useful for testing since glBSP will  automati-
	      cally  switch  to	V5 format whenever the ordinary	limits are ex-

	      glBSP will normally try to copy lumps from the input WAD file to
	      the  output  file	instead	of loading them	into memory.  This al-
	      lows you to run glBSP on very large WADS (e.g. 15	 MB  for  DOOM
	      II) on a low memory machine.

	      This  option  causes everything from the input file to be	loaded
	      into memory.  This allows	you to run glBSP using the  same  file
	      for  both	 input	and output, but	I strongly recommend _against_
	      it: you could lose your original WAD  if	something  goes	 wrong
	      (and you know Murphy...).

	      Turn off the progress indicator.

	      Forces  glBSP  to	not create the normal node information when it
	      detects that it is absent.

	      Normally glBSP will automatically	use GWA	 mode  if  the	output
	      filename	is  missing (i.e. no -o	option)	or if the output file-
	      name has the ".gwa" extension.  This option  forces  glBSP  into
	      GWA mode.

	      Removes  any  unused  sectors that are found in the level.  This
	      has the potential	to cause problems, since in certain  scripting
	      languages	(e.g. EDGE's RTS, or Doom Legacy's Fragglescript) some
	      commands use sector numbers directly, and	pruning	unused sectors
	      can cause	those references to become invalid.

	      Merge duplicate vertices at the same location into a single ver-
	      tex.  This is usually safe, but is not done by  default  because
	      some  engines (e.g. Risen3D) need	the duplicate vertices to stay
	      separate for a special effect.

       -maxblock _num_
	      Sets the limit of	the number of blocks the BLOCKMAP may  contain
	      before we	truncate it.  Default is 44000.	 When the level	is too
	      large to fit, glBSP will truncate	the  blockmap,	so  it	covers
	      less area	on the level.  This means that in the parts it doesn't
	      cover (at	the outer edges) there is no collision detection:  you
	      can  walk	 through  walls	and other objects and bullets/missiles
	      don't hit	anything.  On very large but sparse  levels,  using  a
	      larger value (e.g. 60000)	may help.

	      A	 more  serious	problem	 is  when the blockmap overflows.  The
	      blockmap created would be	invalid, and could crash the DOOM  en-
	      gine  when  used.	  glBSP	will create an empty blockmap instead,
	      causing modern ports to build their own blockmap.

       New in version 2.20 is support for response  files.   These  are	 files
       containing a list of options.  You specify the response file by prefix-
       ing it with '@'.	 For example:

       glbsp @argfile.rsp

       The "@argfile.rsp" on the command line will be replaced with  the  con-
       tents  of that file.  New-line characters are treated like spaces.  Re-
       cursion (using '@' inside a response file) is not supported.

       When the	normal nodes overflow, older versions of  glBSP	 would	simply
       write  out  the invalid node data.  glBSP 2.20 now writes the node data
       in the ZDBSP format (originally created for the ZDoom engine).

       Andrew Apted created glBSP and glBSPX and continues to maintain them.

       Andrew Baker, Janis Legzdinsh and Andre Majoral have contributed	 code,
       and Marc	Pullen helped with the documentation.

       glBSP  was originally based on BSP 2.3 (C) Colin	Reed and Lee Killough,
       which was created from the basic	theory stated in DEU5  (OBJECTS.C)  by
       Raphael Quinet.

       This program is free software; you can redistribute it and/or modify it
       under the terms of the GNU General Public License as published  by  the
       Free  Software Foundation; either version 2 of the License, or (at your
       option) any later version.

       This program is is distributed in the hope that it will be useful,  but
       WITHOUT	ANY  WARRANTY;	without	 even  the  implied  warranty  of MER-
       Public License for more details.

       The	   glBSP	Homepage:

				September 2005			      glbsp(1)


Want to link to this manual page? Use this URL:

home | help