Hosting and domain costs until October 2024 have been generously sponsored by dumptruck_ds. Thank you!

Editing QBSP

From Quake Wiki

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
==What QBSP Does==
+
'''QBSP''' is the first stage of [[map compiling]]. It is the process that reads the [[map file]] and generates the [[bsp file]], and in doing so calculates all of the geometry and collision data for the level. It also extracts any needed textures from the associated [[wad files]] and repackages them into the bsp file. After this step, the level can be loaded into the game engine. However, it will not have any lighting or visibility data until you run [[Light]] and [[Vis]].
'''QBSP''' is the first stage of [[Map_compiling|map compiling]]. It is the process that reads the [[Quake file formats|map file]] and generates the [[Quake file formats|bsp file]], and in doing so calculates all of the geometry and collision data for the level. It also extracts any needed textures from the associated [[Quake file formats|wad file]] (or files) and repackages them into the bsp file. After this step, the level can be loaded into the game engine. However, it will not have any lighting or visibility data until you run [[Light (map compiling)|Light]] and [[Vis]].
 
  
==How QBSP Does It==   
+
==What QBSP Does==   
Using the [[Brush|brushes]] from the map file's [[worldspawn]] entity, it calculates the [[bsp tree]] that stores all visible surfaces in the game.  It also generates the [[collision hull|collision hulls]], which are also bsp trees but do not have any visible surfaces, and are only used for collision detection.  For each additional [[Entity|entity]] that has brushes, it generates a [[submodel]] which also has its own collision hulls. Any textures needed by the level are copied into the bsp file from the associated wad files. At runtime, the engine will load textures from the bsp, not the wad files.
+
Using the [[brushes]] from the map file's [[worldspawn]] entity, it calculates the [[bsp tree]] that stores all visible surfaces in the game.  It also generates the [[collision hulls]], which are also bsp trees but do not have any visible surfaces, and are only used for collision detection.  For each additional [[entity]] that has brushes, it generates a [[submodel]] which also has its own [[collision hulls]].
  
QBSP also generates a [[Quake file formats|prt file]] containing the portal information necessary for Vis to run.  The prt file is not needed or used by the game engine. If a map has a [[leak]], QBSP will generate a [[pointfile]] instead of a prt file.  This file can be used by the game engine to display a visual trail of particles showing you where the leak is.  If a map has multiple leaks, QBSP will only find the first one.
+
Any textures needed by the level are copied into the bsp file from the associated wad files. At runtime, the engine will load textures from the bsp, not the wad files.
 +
 
 +
QBSP also generates a [[prt file]] containing the portal information necessary for Vis to run.  The prt file is not needed or used by the game engine. If a map has a [[leak]], QBSP will generate a [[pointfile]] instead of a prt file.  This file can be used by the game engine to display a visual trail of particles showing you where the leak is.  If a map has multiple leaks, QBSP will only find the first one.
  
 
==Using QBSP==
 
==Using QBSP==
QBSP is a command-line tool, generally named qbsp.exe.  You can invoke it from a command prompt, via a shortcut or batch file, or from the "compile" or "build" menus of some [[Mapping_tools#Level_Editors|level editors]].
+
QBSP is a command-line tool, generally named qbsp.exe.  You can invoke it from a command prompt, via a shortcut or batch file, or from the "compile" or "build" menus of some [[level editors]].
  
 
===Command-line options===
 
===Command-line options===
 
+
TODO
This is for you if you're struggling finding out how to use the command line tools from tyrutils on [https://en.wikipedia.org/wiki/Linux linux] due to lack of information and guides out there. The only ones I've even read about are focused on the windows GUI version with the three tools in one package. You can find QBSP, Light and Vis already compiled for you in the bin folder.
 
 
 
To find out any of their options, just execute them in the terminal.
 
<code>
 
:./qsbp
 
:./vis
 
:./light
 
</code>
 
These will echo out a bunch of options for you to choose from. Works just like the windows version, you convert the .map with QSBP first and then light. You only need Vis for debugging and larger levels so if you're starting out, don't worry about it for now.
 
 
 
Sorry for lack of explanation, I covered it as briefly as I could and it's not at all that difficult.
 
  
 
===Error Messages and Warnings===
 
===Error Messages and Warnings===
 
+
TODO
====WARNING 16: Texture ______ not found====
 
Open the .map file in a text editor and note the "wad" path. Verify this path is correct.
 
 
 
You may have problems due to spaces in file names. Fix the path using underscores "_" or hyphens "-", then re-add the textures into your mapping tool.
 
 
 
Try using absolute paths (/path/to/file.wad), instead of relative paths (../../file.wad)
 
  
 
===Updated Versions===
 
===Updated Versions===
In addition to [[id Software]]'s official QBSP, there have been various unofficial versions that improve on the original or add additional features.  For a list of QBSP variants, see [[Mapping_tools|mapping tools]].
+
In addition to [[id Software]]'s official QBSP, there have been various unofficial versions that improve on the original or add additional features.  For a list of QBSP variants, see [[Compiling Tools]].

Please note that all contributions to Quake Wiki are considered to be released under the GNU Free Documentation License 1.3 or later (see Quake Wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)