BSP flags (Quake and GoldSrc): Difference between revisions
SirYodaJedi (talk | contribs) m (→Surface flags) |
SirYodaJedi (talk | contribs) m (→Surface flags) |
||
Line 7: | Line 7: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Flag !! Name !! Notes | ! Flag !! Name !! Dev comment !! Notes | ||
|- | |- | ||
| 0x00000001 || TEX_SPECIAL || Surface does not have a lightmap. Used by [[QBSP]] to tell [[LIGHT (Quake compiler)|LIGHT]] to not generate lightmaps for sky and liquid surfaces]] | | 0x00000001 || TEX_SPECIAL || sky or slime, no lightmap or 256 subdivision || Surface does not have a lightmap. | ||
Used by {{quake}} [[QBSP]] to tell [[LIGHT (Quake compiler)|LIGHT]] to not generate lightmaps for sky and liquid surfaces, which are not subdivided to account for maximum lightmap size (15x15 luxels, or 240x240 texels). [[ericw-tools]] additionally uses this on surfaces textured with {{code|TRIGGER}}. | |||
{{goldsrc}} [[QCSG]] and [[HLCSG]] don't use this, instead always subdividing surfaces regardless of if they need ligthmaps. Therefore, [[QRAD]] and [[HLRAD]] will always lightmap all textured surfaces, unless they are flagged in some other manner, such as using {{newbspguy|4.1}}. | |||
|- | |- | ||
| 0x00000002 || TEX_MISSING || Used by fitzquake and derivatives to indicate a missing texture | | 0x00000002 || TEX_MISSING || johnfitz -- this texinfo does not have a texture || Used by fitzquake and derivatives to indicate a missing texture | ||
|- | |- | ||
| 0x00000800 || ??? || Used by VERTEXNORMALS [[BSPX]] lump | | 0x00000800 || ??? || N/A || Used by VERTEXNORMALS [[BSPX]] lump to indicate a face that should have smooth shading based upon its vertex normals. | ||
|} | |} | ||
Revision as of 08:57, 6 June 2024

Remember to check for any notes left by the tagger at this article's talk page.

Surface flags
Despite having a 32-bit integer available to be used, most flags go unused. Vanilla Quake engines and GoldSrc only use TEX_SPECIAL.
Flag | Name | Dev comment | Notes |
---|---|---|---|
0x00000001 | TEX_SPECIAL | sky or slime, no lightmap or 256 subdivision | Surface does not have a lightmap.
Used by |
0x00000002 | TEX_MISSING | johnfitz -- this texinfo does not have a texture | Used by fitzquake and derivatives to indicate a missing texture |
0x00000800 | ??? | N/A | Used by VERTEXNORMALS BSPX lump to indicate a face that should have smooth shading based upon its vertex normals. |
Contents types
Contents are stored as a signed 32-bit integer, and are always negative.
Ambient Types
Ambients are stored as an array of 4 unsigned bytes, indicating volume. Only Quake uses them, and it only uses AMBIENT_SKY and AMBIENT_WATER, which are hardcoded in the engine to play specific sounds when a visleaf containing the given ambient type is in the current PVS.
Index | Header text | Header text |
---|---|---|
0 | AMBIENT_WATER | |
1 | AMBIENT_SKY | |
2 | AMBIENT_SLIME | |
3 | AMBIENT_LAVA |