This article's documentation is for anything that uses the Source engine. Click here for more information.

VVIS++

From Valve Developer Community
Jump to navigation Jump to search

English (en)Русский (ru)Translate (Translate)

VBSP++ ▶ VVIS++ ▶ VRAD++ ▶ BSPZIP++

This article or section is a stub. You can help by expanding it.
Comparison between regular VVIS's and VVIS++'s compile speed. VVIS++ compiles visibility data significantly faster than regular VVIS.
Developer(s)
Initial release
Aug 4, 2025
Stable release
Oct 3, 2026
Operating system
Windows
Type
Map compiler
Target engine(s)
Source
Distribution
Freeware
Download

VVIS++ VVIS++ is a community-made modification of Source's VVIS developed by ficool2. It significantly reduces VVIS compile times, while providing the same result as regular VVIS.

Differences

  • Depending how big the map is, or how the map was optimized, and the CPU, VVIS++ will be 50% to 2700% faster compared to original VVIS.
  • Scales up to 64 threads
  • Added AppID mounting in gameinfo.txt
  • Deprecated func_viscluster, as VVIS++ is fast enough that visclusters aren't needed anymore and using visclusters will hinder VVIS++ optimizations.
  • Removed VMPI, possibly because VVIS++ is fast enough that VMPI isn't needed anymore.

Compile Comparison

Map - d2_coast_01 (pre-Anniversary)
  • Stock VVIS (64-bit, HL2:DM 20th)
    • i5-3470S (2.9GHz base, 3.2GHz boost, no AVX2, 4 cores & 4 threads) - 2:23:39 (VVIS only), 2:25:12 (total incl. stock VBSP, VRAD)
    • i5-12400F (2.5GHz base, 4.0GHz boost, AVX2, 6 cores & 12 threads) - 38:32 (VVIS only), 39:53 (total incl. stock VBSP, VRAD)
  • VVIS++ (64-bit, HL2:DM 20th)
    • i5-3470S (2.9GHz base, 3.2GHz boost, no AVX2, 4 cores & 4 threads) - 7:21 (VVIS++ only), 7:50 (total incl. VBSP++, VRAD++)
    • i5-12400F (2.5GHz base, 4.0GHz boost, AVX2, 6 cores & 12 threads) - 1:30 (VVIS++ only), 1:38 (total incl. VBSP++, VRAD++)
Note.pngNote: Pre-Anniversary (Xbox 360/Orange Box) version of the map, no visclusters, compiled using 64-bit VVIS shipped with HL2: Deathmatch (20th Anniversary version) and VVIS++. Additionally, VRAD++ with -both works differently, as LDR lighting data will be redirected to HDR, saving the VRAD compile time and total compile time.
Note.pngNote: On the i5-3470S system, Meltdown and Spectre security patch is enabled. Both system runs Windows 11 IoT Enterprise LTSC 2024.

Supported games

VVIS++ is supported for all games on Source 2013 Source 2013 (Half-Life 2 incl. it's episodes and Portal, and the Team Fortress 2 branch Team Fortress 2 branch), Left 4 Dead engine branch Left 4 Dead engine branch (and later), Source Filmmaker Source Filmmaker and Garry's Mod Garry's Mod.

Installation instructions

As VVIS++ are now standalone, install the tools to any folder normally (example: Steam\steamapps\common\SourceSDK\tools++\vvis++.exe or a folder in your Desktop), whether outside or inside game/SDKs folder (create if it's doesn't exist). Putting the tools executable in bin or bin\x64 folder (old way) also works, although it is no longer recommended since it may cause unexpected issues and waste few MBs of disk space.

Once that's done, either open Hammer (or Hammer++) in your supported game, go to Build Programs tab > point VIS executable to where you installed vvis++.exe, or use the tool from the command-line.

Unsupported games or supported games may have additional notes below the section "Other games/mods tested & additional notes".

Other games/mods tested & additional notes

VVIS++ has been also tested with the following games, other VBSPs or engine branch:

Game BSP Version Engine branch (game) VVIS++ Version Notes ViewDiscuss
All Source 2013 Singleplayer Source 2013 Singleplayer games
Half-Life 2 Half-Life 2 (including Episodes)
Half-Life: Source Half-Life: Source
Portal Portal
20 (Orange Box SP format) Source 2013 Singleplayer N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in your Source 2013 SP game and edit the VIS executable pointer to where you installed vvis++.exe, or use the tool from the command-line.
All Source 2013 Multiplayer Source 2013 Multiplayer games 20 (OB Multiplayer format) Source 2013 Multiplayer N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in your Source 2013 MP game and edit the VIS executable pointer to where you installed vvis++.exe, or use the tool from the command-line.
All Team Fortress 2 branch Team Fortress 2 branch games 20 (OB Multiplayer format) Team Fortress 2 branch N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in your TF2 branch game and edit the VIS executable pointer to where you installed vvis++.exe, or use the tool from the command-line.
All Source 2004 Source 2004 and Source 2006 Source 2006 games 19 (2004 pre-DOD:S & Lost Coast)
20 (2004 v2 & 2006, Old Engine format)
Source 2004
Source 2006
N/A (Standalone)
Team Fortress 2 branch (before Apr 6 VVIS++ update)
Not fully supported. Although VVIS++ can read Source 2004 and 2006's .bsp (meaning it is compatible with Source 2004/2006's VBSP), Source 2004 & 2006's VRAD will fail to compile maps compiled with VVIS++ (Error - LoadBSPFile: odd size for lump 56). Using VRAD++ after VVIS++ will allow the map to compile and load on Source 2006 (as long there are no static props on the map, which would cause the game to instantly crash on load), but will result in a map with corrupted prop lighting for dynamic or physics props. Additionally, while the map being loadable on a Source 2006 game even with broken dynamic props lighting, attempting to build cubemap will result in the game crash with "LoadBSPFile: odd size for lump 56" error.
Left 4 Dead Left 4 Dead 20 (L4D branch format) Left 4 Dead engine branch N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in Left 4 Dead or your Left 4 Dead branch game and edit the VIS executable pointer to pointer to where you installed vvis++.exe, or use the tool from the command-line.
Left 4 Dead 2 Left 4 Dead 2 21 Left 4 Dead engine branch N/A (Standalone)
Team Fortress 2 branch (before Apr 6 VVIS++ update)
After installing VVIS++, either open Hammer (or Hammer++) in Left 4 Dead 2 or your Left 4 Dead branch game and edit the VIS executable pointer to pointer to where you installed vvis++.exe, or use the tool from the command-line.
Alien Swarm Alien Swarm Alien Swarm engine branch N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in Alien Swarm or your Alien Swarm branch game and edit the VIS executable pointer to pointer to where you installed vvis++.exe, or use the tool from the command-line.
Portal 2 Portal 2 Portal 2 engine branch N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in Portal 2 or your Portal 2 branch game and edit the VIS executable pointer to pointer to where you installed vvis++.exe, or use the tool from the command-line.
Counter-Strike: Global Offensive Counter-Strike: Global Offensive CS:GO engine branch N/A (Standalone) After installing VVIS++, either open Hammer (or Hammer++) in CS:GO or your CS:GO branch game and edit the VIS executable pointer to pointer to where you installed vvis++.exe, or use the tool from the command-line.
Mapbase Mapbase games or Mapbase's VBSP 20 Source 2013 Singleplayer with Mapbase N/A (Standalone) BSPs generated by Mapbase's VBSP are compatible with VVIS++. For installation, follow the same instructions as Source 2013 SP games.
Tip.pngTip: Since VVIS++ is completely standalone, instead of installing it on the x64 folder you have created, you can put VVIS++ anywhere (in a different folder for example) and the tool will work.

System Requirements

  • VVIS++ supports any 64-bit processors (CPU), but it can take advantage of AVX2 (Intel Core series - since 2013 (Haswell), Celeron and Pentium - since 2020 (Tiger Lake) or AMD Excavator - since 2015) if the CPU supports it.
  • CPU with AVX2 support would compile maps much faster than CPU without AVX2.

External links

Navigation