Texture Name Fixing
During BSP compilation, VBSP modifies texture names for cubemaps, water depth, and vertex blending. BSPSource can reverse these changes:Automatic Texture Processing
BSPSource automatically processes these texture patterns: Cubemap patches:Configuration
Tool Texture Fixing
VBSP optimizes invisible brush sides by reassigning their textures. BSPSource can reconstruct the original tool texture names using surface properties and content flags.How Tool Texture Fixing Works
- Surface Property Preservation: VBSP only reassigns textures with matching surface properties
- Flag Matching: BSPSource uses surf/content flags to identify original tool textures
- Best Guess Selection: When multiple matches exist, the tool texture with the most matching requirements is selected
Supported Tool Textures
BSPSource recognizes game-specific tool textures: Standard Source Engine:tools/toolsblacktools/toolsblock_lostools/toolsblockbulletstools/toolsblocklighttools/toolscliptools/toolshinttools/toolsinvisibletools/toolsnodrawtools/toolsoccludertools/toolsplayercliptools/toolsskiptools/toolsskyboxtools/toolstrigger
tools/toolsclip_metaltools/toolsclip_woodtools/toolsclip_glass- etc.
tools/toolsareaportaltools/toolsfog
tools/toolsbuyzonetools/toolsbombzone
Tool texture definitions are automatically selected based on the game/AppID detected in the BSP file.
Texture Replacement
You can override textures during decompilation:Backface Texture Override
Face Texture Override
Texture Canonization
All texture names are automatically canonized:- Lowercase conversion:
TEXTURE→texture - Separator normalization:
textures\wall→textures/wall
Cubemap Side Assignment
BSPSource tracks which brush sides use environment maps and assigns them toenv_cubemap entities:
Texture Info Optimization Detection
BSPSource can detect when VBSP has excessively optimized texinfo data (a protection technique):- Monitors ratio of
nodrawbrush sides - Warns when ratio exceeds 90%
- See Protection Detection for details
Advanced Texture Options
VMF Precision Scaling
Texture coordinates use configurable precision scaling:These options control decimal precision in the VMF output to match Hammer’s internal format.
Patched Material Detection
You can check if a texture name has been patched by VBSP:- Validating texture fixing
- Identifying embedded materials
- Detecting modified textures
Texture Fixing Example
Common Issues
Wrong tool textures after decompilation
Wrong tool textures after decompilation
Enable
fixToolTextures to reconstruct original tool texture names from surface properties and flags.Cubemap textures still have coordinates
Cubemap textures still have coordinates
Ensure
fixCubemapTextures is enabled. Some protected maps may have encrypted texture data that cannot be fixed.All textures show as tools/toolsnodraw
All textures show as tools/toolsnodraw
This indicates the map uses the IID nodraw texture hack (90%+ nodraw brush sides). See Protection Detection.
Texture names are uppercase
Texture names are uppercase
BSPSource automatically converts all texture names to lowercase. This is normal VMF behavior.
Related Topics
- Decompilation Modes - How brush modes affect texture reconstruction
- Embedded Files - Extracting embedded materials from the pakfile
- Protection Detection - Detecting texture-based protection methods