IdTech 1/2/3/4 BSP/PVS
Posted: Wed Apr 09, 2014 12:16 pm
Hey guys, I've been thinking for a while of doing some big art farty maps with large open spaces and detailed geometry.
There's no gameplay involved, it's a purely visual thing and shader wise it would be really simple, all about simple aesthetics.
One thing I've been wondering is, which BSP version is best to use nowadays? All other things not considered.
I only understand the technical sides of this in broad conceptual terms, so I'm asking since there's more qualified people here.
I'd like to not have to worry too much about optimizing occlusion culling, but I also want fairly flexible texture alignment and vis times that are managable.
So, as I understand it:
Q1 BSP is old and the vis times are potentially extreme. The upside is that it's fairly straightforward when using something like BSP2, no caulking/hinting/areaportals etc.
Q2 BSP I never used, but it seems to be in disuse and it has all kinds of finicky optimisations that might be deprecated or inefficient for modern GPU's?
I know Q2W has improved Q2 BSP, so that might be worth looking into? I'm slightly intrigued about it :P
Q3 BSP is newer, decent tools, decent vis times. Downsides are it seems to lag when the vis isn't carefully optimized. Especially in large outdoors where Q1 for instance doesn't seem to have much issue. I made a big open map a while ago and the performance just didn't cut it once I started stacking too much stuff in. Curved surfaces are nice, but no huge deal. Manual caulking is no huge deal to me, but not having to bother is nice also. FBSP (qFusion) is like Q3 but with bigger lightmap page size?
D3 BSP I haven't tried yet, but from what I gather it does everything with manually placed portals? How does this compare to other more precomputation heavy methods? I read a couple of times it's supposedly bad at outdoors, but is that due to PVS issues or due to the lighting? I recall some sluggish outdoors in Prey where I turned off shadow volumes and the FPS just went into tripple digits.
Also, are there other options I didn't list?
If it turns out old fashioned BSP is too prohibitive I might look into other venues, such as doing everything in a modelling app and use something like Unity or UDK, but in that case I'll need to learn some new tools/engine in the process. That might be worh it, however I still like BSP because it has less of a 'random poly soup' feel than a lot of modern engines which stick a bunch of modular meshes together. BSP also seems to allow for more liberal texturing (including consistent texture scaling, etc). Would be good to get some mapper as well as programmer input... maybe there's other people who wonder about this stuff. There's the workflow and the technical limitations/advantages to consider. I can always design around limitations, but it's certainly nice to have things 'just work'.
There's no gameplay involved, it's a purely visual thing and shader wise it would be really simple, all about simple aesthetics.
One thing I've been wondering is, which BSP version is best to use nowadays? All other things not considered.
I only understand the technical sides of this in broad conceptual terms, so I'm asking since there's more qualified people here.
I'd like to not have to worry too much about optimizing occlusion culling, but I also want fairly flexible texture alignment and vis times that are managable.
So, as I understand it:
Q1 BSP is old and the vis times are potentially extreme. The upside is that it's fairly straightforward when using something like BSP2, no caulking/hinting/areaportals etc.
Q2 BSP I never used, but it seems to be in disuse and it has all kinds of finicky optimisations that might be deprecated or inefficient for modern GPU's?
I know Q2W has improved Q2 BSP, so that might be worth looking into? I'm slightly intrigued about it :P
Q3 BSP is newer, decent tools, decent vis times. Downsides are it seems to lag when the vis isn't carefully optimized. Especially in large outdoors where Q1 for instance doesn't seem to have much issue. I made a big open map a while ago and the performance just didn't cut it once I started stacking too much stuff in. Curved surfaces are nice, but no huge deal. Manual caulking is no huge deal to me, but not having to bother is nice also. FBSP (qFusion) is like Q3 but with bigger lightmap page size?
D3 BSP I haven't tried yet, but from what I gather it does everything with manually placed portals? How does this compare to other more precomputation heavy methods? I read a couple of times it's supposedly bad at outdoors, but is that due to PVS issues or due to the lighting? I recall some sluggish outdoors in Prey where I turned off shadow volumes and the FPS just went into tripple digits.
Also, are there other options I didn't list?
If it turns out old fashioned BSP is too prohibitive I might look into other venues, such as doing everything in a modelling app and use something like Unity or UDK, but in that case I'll need to learn some new tools/engine in the process. That might be worh it, however I still like BSP because it has less of a 'random poly soup' feel than a lot of modern engines which stick a bunch of modular meshes together. BSP also seems to allow for more liberal texturing (including consistent texture scaling, etc). Would be good to get some mapper as well as programmer input... maybe there's other people who wonder about this stuff. There's the workflow and the technical limitations/advantages to consider. I can always design around limitations, but it's certainly nice to have things 'just work'.