Well, Half-Life has portals, too, and even Unreal has its own form of portal (and anti-portal) tech. Hint brushes affect portals, but without basing the entire vis system around portals there's no good way to get the setup you need - you still have to guess around a bit.
I'm only familiar with portals in D3 and anti-portals in Unreal, but I assume the same principle applies here. You place a portal such that it seals itself against world geometry - for example, in a doorway, at the corner of a hallway, or anywhere else you'd like to use as a cutoff point for rendering. Say you have two portals like this (this is how D3 displays them via r_showportals 1):
In this case, we have two portals. We'll say the one on the right (portal 1) is closer and the one on the left (portal 2) is farther. Because the two overlap, we know it is possible to view parts of the area behind portal 2. Thus, they are both considered 'open' and are rendered.
Now we've moved somewhat, and portal 2 has moved outside of portal 1. We know for a fact that there is no possible way that portal 2 can be seen from portal 1, so it is closed and all geometry behind it culled.
When you combine this with more complex portal usage, you can get crazy culling in areas you never thought possible. Ever seen a 32 or 64 unit pillar block vis when you get up close? Or been able to close off visibility around a curve? :smile:
Unreal's anti-portals are the opposite in that anything behind them is culled. This means you can actually toss in an antiportal into a terrain mesh and get large terrain features to block vis. Pretty handy, and if combined with a portal system I think I'd crap myself. :razz: Instead of putting one of those in a door, you'd put it around the door, so only what is directly visible through the door is rendered. That's combined with zones, I think, which help define portals. It's been a while since I've used it, but it's also a nice system.
Hopefully HL2's portals work somewhat similar to D3's. :smile:
EDIT: Ack, I apologize, that's some hideous jpeg compression... Ah well, I bet Orph's happy! :biggrin: