Also VIS muss zur visibility berechnung deine komplette Map in leafs aufteilen.
Ich versuche es mal in Form von einer vereinfachten Analogie zu erklären: Stell dir die Leafs mal als Styropor-Quader (mit einer bestimmten, endlichen Größe) vor. Du willst nun dein Zimmer mit diesen Styroporquadern füllen - komplett, sodass keine kubikmeter mehr "leer" ist am Ende.
So, wenn dein Zimmer nun komplett leer wäre, dann hast du gar nicht soviel zu tun, du packst ein paar von den Quadern übereinander / nebeneinander und ggf muss man mal einen etwas schmaler schneiden zur Seite oder nach oben hin.
Wenn jetzt jedoch in der Mitte des Raumes einer einen Tisch hinstellt wirds schon etwas schwieriger, dann musst du mit deinen Quadern um die Tischbeine etc, also viel "rumschneiden", bis alles passt.
Wenn jetzt ein noch komplexerer Gegenstand (was weiß ich, eine Leiter, etwas kugelförmiges..) sich dort im Raum befindet, dann wird es noch viel schwieriger für dich, deine Quader so zu schneiden, bis du um alle Gegenstände "herum" bist. Wahrscheinlich würdest du oft zu viel wegschneiden oder zu wenig und müsstest die Prozedur wiederholen usw.
Genau so geht es VIS dann auch. Und die simple Lösung ist einfach aus diesen Gegenständen ein ENTITY zu machen (welches ist eigentlich egal, aber man nimmt in source meist func_detail wenn das Objekt sonst keine Funktion hat, oder vllt noch func_lod, wenn es auf Distanz ausgeblendet wird). Der Knackpunkt ist: sobald ein Brush oder eine Brushgruppe ein Entitiy sind, muss VIS sie nicht mehr beachten bei seiner Arbeit. Da eine Leiter in deinem Fall ein zusammenhängendes Objekt ist bietet es sich an alle Teile zu selektieren und zu einem func_detail o.ä. Zu machen. Wenn man jeden Brush einzelnd zu einem func_detail macht, dann schraubt man nur unnötig die Anzahl der Entities hoch (auch die sind ja limitiert von der Anzahl..).
Eine Hauswand hingegen wäre z.B. _nicht_ sinnvoll zu einem Entity zu machen, dann würde die Engine auch alles im Haus (was sonst evtl. nicht gerendert würde) rendern und das geht dann ganz einfach auf die frames per second.