13+ Hour Long Compile?

xzzy

aa
Jan 30, 2010
815
531
A good trick to speed up vvis is to use func_viscluster.

It certainly is.. it's also a great trick for completely butchering your map's optimization.

You can develop a lot of "entire map being rendered" problems if a player gets too close to a viscluster.
 

EArkham

Necromancer
aa
Aug 14, 2009
1,625
2,773
IMO the only legitimate use of func_viscluster is to fix that weird issue where sprites and point_spotlights flicker out of visibility due to crossing visleaves. And I doubt that'd ever be necessary in TF2 since everything is brightly lit as a general rule.

I used to think that it had its uses fixing cluttered visleaves coming off things like roof edging, but honestly that shouldn't be an issue to begin with if you put a bit of forethought into your brushwork.
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
Yes but if I do that, you can't see the border behind them, at least I thought.
I don't know what you're talking about, but you're wrong. The outermost walls of the map need to be the skybox texture, at least on the insides, or you won't have a skybox at all or any sunlight in your map.

Also, should I make the floors func_details as well since there isn't anything below the map?
No. The outside walls, and that includes the ground, need to be non-func_detailed so they seal the map. Otherwise your outdoor visleaves won't have anywhere to stop.
 

henke37

aa
Sep 23, 2011
2,075
515
There is an easy way to detect dodgy map parts: load the portal file that vbsp creates. If it looks like it has a silly amount of visleafs then it probably does.
 

Nicknam4

L1: Registered
Dec 8, 2011
28
12
I don't know what you're talking about, but you're wrong. The outermost walls of the map need to be the skybox texture, at least on the insides, or you won't have a skybox at all or any sunlight in your map.


No. The outside walls, and that includes the ground, need to be non-func_detailed so they seal the map. Otherwise your outdoor visleaves won't have anywhere to stop.

Hehe, I have a skybox outside those nodraw walls, those are just a border for the player because there are trees behind it. The map is sealed, func_detailing the floors won't unseal the map. I've thought of that. ;)
 

Pocket

Half a Lambert is better than one.
aa
Nov 14, 2009
4,694
2,579
Hehe, I have a skybox outside those nodraw walls, those are just a border for the player because there are trees behind it. The map is sealed, func_detailing the floors won't unseal the map. I've thought of that. ;)
Still wrong. First off, don't enclose your entire map in a skybox. The ground (or the nodraw brush directly under it if you're using displacements) should be the very bottom of your map with nothing under it, and the skybox walls should attach at the corners to that. Secondly, to stop players from going outside the field of play, you use playerclip, not nodraw. Nodraw blocks light just like a solid concrete wall, even though you can see through it.
 

Nicknam4

L1: Registered
Dec 8, 2011
28
12
Still wrong. First off, don't enclose your entire map in a skybox. The ground (or the nodraw brush directly under it if you're using displacements) should be the very bottom of your map with nothing under it, and the skybox walls should attach at the corners to that. Secondly, to stop players from going outside the field of play, you use playerclip, not nodraw. Nodraw blocks light just like a solid concrete wall, even though you can see through it.

I do have the skybox properly in place, it's not under the map, don't worry.

Thanks for the playerclip tip though. ;)
 

xzzy

aa
Jan 30, 2010
815
531
To be totally precise though, nodraw brushes do not "block light". They cut vis leaves.. which means if the geometry behind the nodraw brush is in the PVS it'll get rendered and look totally normal.

If the geometry is not in the PVS, you'll get HOM or total darkness.