From Valve Developer Community
- convert brushes to polygons
- generate visleaves
- generate detail props
- swallow most internal entities into the world
- replace specular materials with patched versions that link to the nearest cubemap
- embed the entity block
While the resulting BSP file can be played directly it has no visibility control (poor performance) and no lighting.
.mdlfiles that have the
IDST1header will fail to load for VBSP, see VRAD's bugs.
vbsp [options...] vmf_file
"Half-Life 2\bin\vbsp.exe" -onlyents sdk_trainstation_01
This will re-embed the entity block without affecting the world.
-keepstalezipwill mark the map as stale by embedding the file stale.txt into the BSP. Loading stale maps in the engine will cause a "This map is not final!!" warning message in the console.
- Turn on verbose output (also shows more command-line options). Use without any other parameters.
- Only import the entities from the VMF. Brushes and internal entities are not modified. Conserves existing lighting data.
- Only update static and detail props (i.e. the internal entities). Does not generate a .prt file, making VVIS fail!
- Writes glview data to the VMF's directory.
-tmpoutwill cause the files will be written to
- Removes func_detail brushes. The geometry left over is what affects visibility.
- Get rid of water brushes.
- Run as an idle-priority process.
- Override the VPROJECT environment variable.
- Specify the folder of the
- Embed the contents of <directory> in the packfile
- Don't bring up graphical UI on vproject errors.
- Control the number of threads vbsp uses (defaults to the # of processors (times 2 for Hypertreading/SMT CPU's) on your machine).
- If -v is on, this disables verbose output for submodels.
- Don't join face vertexes together.
- Don't chop out intersecting brush areas.
- Emit unique face edges instead of sharing them.
- Don't fixup t-junctions.
- By default, vbsp removes the 'outer shell' of the map, which are all the faces you can't see because you can never get outside the map. -noopt disables this behavior.
- Don't prune neighboring solid nodes.
- Don't merge together chopped faces on nodes.
- Don't merge together chopped faces on water.
- Don't subdivide faces for lightmapping.
- vbsp will warn when brushes are output with a volume less than this number (default: 1.0).
- Mark all detail geometry as normal geometry (so all detail geometry will affect visibility).
- Stop processing the map if a leak is detected. Whether or not this flag is set, a leak file will be written out at <vmf filename>.lin, and it can be imported into Hammer.
- Force all surfaces to be bump mapped.
- Snap axial planes to integer coordinates.
-block # #
- Control the grid size mins that vbsp chops the level on.
-blocks # # # #
- Enter the mins and maxs for the grid size vbsp uses.
- Dump static props to staticprop*.txt
- Write files with collision info.
- Scale all lightmaps by this amount (default: 1.0).
- Force lightmaps to be generated for all surfaces even if they don't need lightmaps.
- To do: Currently unknown.
- Keep the BSP's zip files intact but regenerate everything else.
- Substitute materials according to materialsub.txt in content\maps
- Write large minidumps on crash.
- Force it to write physics data for linux multiplayer servers. ( It will automatically write this data if it finds certain entities like info_player_terrorist, info_player_deathmatch, info_player_teamspawn, info_player_axis, or info_player_coop. )
- Force it to not write physics data for linux multiplayer servers, even if there are multiplayer entities in the map.
- Use virtual (not precomputed) displacement collision models
- Enable mandatory Xbox 1 optimisation.