Q3Map2/BSP

From Wikibooks, open books for an open world
Jump to: navigation, search

BSP phase minor switches:[edit]

-custinfoparms[edit]

  • Enables custom surfaceparms for game mods without the need to recompile Q3Map2 itself. Custom surfaceparms are stored in custinfoparms.txt, in the "scripts" directory. Custom surfaceparms follow the format:

// Contentflags

{
surfaceparmName 0x0000 //whatever bitflag is used by your mod for said surfaceparm
}

// Surfaceflags

{
surfaceparmName 0x0000 //whatever bitflag is used by your mod for said surfaceparm
}

-debuginset[edit]

  • Enables debugging of surface triangle insetting. //I'm totally not sure what this is?

-debugportals[edit]

  • Draws the portals into the bsp as translucent polygons. Omit -vis and -light for best -debugportals results.

-debugsurfaces[edit]

  • Colors every surface a different color (very trippy). Omit -vis and -light for best -debugsurfaces results.

-fakemap[edit]

  • Creates a new .map file with a blank worldspawn entity and all the world brushes from your original .map file. //Don't know much about this one.

-flares[edit]

  • Enable support for flares. They are used to generate a glare effect over bright light sources. Only supported by certain versions of the Quake3 Engine like those used in Raven's titles or ioQuake3.

-flat[edit]

  • Forces all texture coordinates for a given surface to the pixel that best fits the average color of the assigned texture.

-fulldetail[edit]

  • Will cause all detail brushes to be handled as if they were structural.

-leaktest[edit]

  • Will cause Q3Map2 to abort compile if a leak is encountered.

-meta[edit]

  • At one time, there was a clear definition as to what, exactly, the -meta switch did. Now, it has become the "magic" switch that is required for most of Q3Map2's advanced features. Always -meta, and always -v.

-mi <N[edit]

  • Sets the maximum per-surface index count to N.

-mv <N>[edit]

  • Sets the maximum per-surface vertex count to N.

-nocurves[edit]

  • Will not compile patch meshes into the .bsp.

-nodetail[edit]

  • Will not compile detail brushes into the .bsp.

-nofog[edit]

  • Will not compile fog brushes into the .bsp.

-nohint[edit]

  • Will not compile hint brushes into the .bsp.

-nosubdivide[edit]

  • Visible surfaces will not be split. TessSize is ignored.

-notjunc[edit]

  • Will not fix T-Junctions (can cause sparklies and LOD cracks).

-nowater[edit]

  • Will not compile liquid brushes into .bsp.

-np <shadeangle (1 through 179)>[edit]

  • Forces all planar shaders to become nonplanar with the shadeangle specified.

-onlyents[edit]

  • Only changes the entities in the compiled .bsp. Needs a compiled .bsp and a new entity file (.ent)

-patchmeta[edit]

  • Creates meta surfaces from patch meshes. This "bakes" a set LOD into patches in your .bsp.

-skyfix[edit]

  • Enables fix for buggy ATI GL_CLAMP behavior. Always use this.

Sidenote: ATI's behavior is correct. The bug was with *NVIDIA* drivers not distinguishing between GL_CLAMP and GL_CLAMP_TO_EDGE, and Q3 using the wrong one: since Q3 development was done predominantly on nVidia hardware, nobody noticed it until too late.

-snap[edit]

  • Enables axial bevel plane snapping to reduce clipped model plane count (use with care). //I totally don't know a thing about this.

-texrange <N>[edit]

  • Limits per-surface texel count to N.

-v[edit]

  • Enables verbose mode for the bsp phase. Always use this.

-verboseentities[edit]

  • Outputs more information about compiling entity sub-models into the .bsp.