Examples of well vised maps
Examples of well vised maps
I ask this almost as a challenge, as I think Quake 3's vising is broken and it never seems to cull what it should. What, if any, are examples of maps that are correctly hinted, especially tight, 1v1 style maps where it's non-trivial to do so? Has anyone pulled this off successfully where the engine doesn't draw what you've hinted away? I understand portals and leafs and what's supposedly supposed to draw but it never seems to work that way in game.
Re: Examples of well vised maps
Quake 3s vising is not broken it is just very likely, more so than older iterations of the quake engine, to create fairly large leaf nodes that are able to see all kinds of things they logically should not.ix-ir wrote:I ask this almost as a challenge, as I think Quake 3's vising is broken and it never seems to cull what it should. What, if any, are examples of maps that are correctly hinted, especially tight, 1v1 style maps where it's non-trivial to do so? Has anyone pulled this off successfully where the engine doesn't draw what you've hinted away? I understand portals and leafs and what's supposedly supposed to draw but it never seems to work that way in game.
I have a few maps that have done what you have described in the past. A map called the potato you can look it up is one example that comes to mind.
Quake 3 BSP culling is tricky because of its unpredictable programmatic nature. In many ways I feel that we are moving to, lol or moved to rather, manually placed portals with scissoring simply because its more tangible and predictable. I would not place too much thought in the old pure standard quake 3 visibility culling anymore.
Hardware culling these days simply omits anything behind other objects now too. "Whats a portal?" LOL....
- Russell Meakim AKA The Castle
Portfolio: http://castledoes.carbonmade.com/
YouTube: https://www.youtube.com/user/zZCastleZz
Tsu: https://www.tsu.co/zZCastleZz
Twitter: @zZCastleZz
Portfolio: http://castledoes.carbonmade.com/
YouTube: https://www.youtube.com/user/zZCastleZz
Tsu: https://www.tsu.co/zZCastleZz
Twitter: @zZCastleZz
-
- Posts: 2237
- Joined: Sat Mar 12, 2005 10:49 pm
Re: Examples of well vised maps
If this is the case I wonder if it's possible to force the hardware to do its culling calculations on areas you tell it to so you can save it's resources for, say, a room with millions of objects in it then have the software side handle portal culling that the hardware would normally handle.
No real reason why I'm wondering this. It's just a thought that popped up after reading your post Castle.
No real reason why I'm wondering this. It's just a thought that popped up after reading your post Castle.
Re: Examples of well vised maps
Well done Castle, I guess you win. =)
The vising on your potato map works very well.
The vising on your potato map works very well.
Re: Examples of well vised maps
Hardware culling in any case is only useful for rendering, which is only one of the many uses of vis. Server culling has actually a much bigger performance impact than renderer culling, so vis'ing (in any of its forms) will still be needed for a while.
I never got satisfactory results from the "classic" way of hinting. Just minor improvements which help nothing if the map wasn't properly designed from the start.
I don't bother hinting much, tbh. Just for specific cases of something which is being drawn when it clearly shouldn't. These things are usually patches, models or detail brushes, and what I do for hidding them is taking the problematic "object" and enclose it inside a hint brush (instead of trying to put hints at doors from where it's seen or hint the whole room). Works like a charm.ix-ir wrote: Has anyone pulled this off successfully where the engine doesn't draw what you've hinted away?
I never got satisfactory results from the "classic" way of hinting. Just minor improvements which help nothing if the map wasn't properly designed from the start.
Re: Examples of well vised maps
Vis'ing also culls sound which sometimes makes environmet unreal.
Re: Examples of well vised maps
UE3 right now is the best example of an engine that handles the most cutting edge features.Silicone_Milk wrote:If this is the case I wonder if it's possible to force the hardware to do its culling calculations on areas you tell it to so you can save it's resources for, say, a room with millions of objects in it then have the software side handle portal culling that the hardware would normally handle.
No real reason why I'm wondering this. It's just a thought that popped up after reading your post Castle.
In this case what you are describing is simple enough handled through Kismet using the engines ability to do real time streaming of levels. Simply have the player touch a trigger that loads the next area and unloads the previous area in real time and your good to go.
That combined with hardware culling and you have two very powerful systems to make sure your game doesn't overstep its technical bounds.
So far my own observations with hardware culling on UE3, at least, has been nothing short of a nearly perfect system. I can build huge levels with amazing detail and the hardware culling appears to me to work fine. Take a look at multiplayer forms of UE3 based games where they typically avoid using level streaming. They appear to load and unload textures in extreme cases as you navigate the levels. I might be wrong on this though.jal_ wrote:Hardware culling in any case is only useful for rendering, which is only one of the many uses of vis. Server culling has actually a much bigger performance impact than renderer culling, so vis'ing (in any of its forms) will still be needed for a while.
I wouldn't consider this a fundamental flaw with the idea of proper culling in a 3d engine.a13n wrote:Vis'ing also culls sound which sometimes makes environmet unreal.
In the case of ambient sounds IMHO its always better give the sound emitter a radius and have it work independently from visibility culling. This includes ideas such as creating sound volumes that that allow you to change various things about the way sounds are played with in a given area. Sound and visibility are entirely different beasts and IMO its logical to treat them as such.
- Russell Meakim AKA The Castle
Portfolio: http://castledoes.carbonmade.com/
YouTube: https://www.youtube.com/user/zZCastleZz
Tsu: https://www.tsu.co/zZCastleZz
Twitter: @zZCastleZz
Portfolio: http://castledoes.carbonmade.com/
YouTube: https://www.youtube.com/user/zZCastleZz
Tsu: https://www.tsu.co/zZCastleZz
Twitter: @zZCastleZz
Re: Examples of well vised maps
I'm quite confident UE3 games do have server side culling too. I have no knowledge of it, but since they work online in today's bandwitchs I'm quite sure they cullCastle wrote: So far my own observations with hardware culling on UE3, at least, has been nothing short of a nearly perfect system. I can build huge levels with amazing detail and the hardware culling appears to me to work fine. Take a look at multiplayer forms of UE3 based games where they typically avoid using level streaming. They appear to load and unload textures in extreme cases as you navigate the levels. I might be wrong on this though.

I, of course, didn't mean hardware culling wasn't worth it, ofc it is, it speeds rendering up and that's always great. What I meant is that it doesn't cover all culling needs. If you don't cull in the server, you send a lot of useless information which not only raises the bandwitch requirement, but also adds a lot of useless processing to the client before even reaching the renderer.
So that's it. Kinda rough areaportal culling.Castle wrote: UE3 right now is the best example of an engine that handles the most cutting edge features.
In this case what you are describing is simple enough handled through Kismet using the engines ability to do real time streaming of levels. Simply have the player touch a trigger that loads the next area and unloads the previous area in real time and your good to go.
That's a particular problem of Q3 which culls sounds as if they were visible stuff.a13n wrote:Vis'ing also culls sound which sometimes makes environmet unreal.
Re: Examples of well vised maps
Vis'ing also culls sound which sometimes makes environmet unreal.
It's a deliberate choice about how they wanted to make the sound system work, and yes it does do silly things sometimes but generally it's 'good enough'. You don't have to do it that way in the Q3 engine and things that are out of PVS can still send sounds to you if you set it up to do so.That's a particular problem of Q3 which culls sounds as if they were visible stuff.