RE: [Algorithms] Portal VS BSP
Brought to you by:
vexxed72
|
From: Neil S. <ne...@r0...> - 2003-12-13 23:41:29
|
> I read that call of duty uses a portal rendering algorithm > rather than BSP. > They state that "to help designers, we switched to a portal > based renderer". > Isn't placing portals an extra burden on artists? I know BSP > just has the annoying preprocessing, but is there any other > reason? It would be interesting to know how many FPS games > don't use BSP. I'm not completely sure what you mean by "BSP". Are you talking about using a BSP tree to decompose the world into convex pieces, so that a PVS can then be calculated from them? Even then, there are a few ways that the PVS can be calculated, including some form of sampling/raytest approach, or using the BSP structure directly to determine connectivity between the convex pieces. And, of course, you can also generate a portal representation from a BSP representation, which is in fact what you would actually be doing when calculating a PVS directly from the BSP tree. I don't think of a BSP tree as a visibility determination approach in itself, but rather as a structure or tool that aids the creation of a visibility determination approach. In the case of PVS generation, the BSP tree provides you with the convex regions, but you also have to calculate the region-region visibility information (which you can also use the BSP to help with). You could use something else entirely for generating a PVS, so it is the PVS that is important, not the BSP. The same goes for portals. You can use a BSP tree to generate portal information, but you do it several other ways, including manual placement of portals. > I assume the portal rendering just for indoor areas since > "portal technology effectively confines us to render interior > scenes only" [1]. I'm not sure if this comment is directed at their inability to generate good portals from rolling terrain, or simply at the lack of occlusion in real terrain. If it is the former, then I would suggest that it is an issue with current portal generation methods, and not portals as a general technique. If it is the latter, then no occlusion culling technique will improve matters and some form of LOD is needed. > Previously I have used BSP because I read that it is more > efficient, perhaps that is no longer the case? "BSPs trade > performance at run-time for a slow preprocessing step > performed when building the world" [1]. Well, I don't see what the problem with that tradeoff is, unless you have incredibly dynamic worlds (i.e. more than just doors opening and closing), in which case you should look at more dynamic visibility methods. > Do any games use a bsp like algorithm to determine portals > for the portal rendering algorithm? or some other automated > portal placement? I'm not aware of any that have used the BSP topology to directly extract portals (not to say that there aren't any), but quite a few do use the BSP for extracting convex regions and then use a sampling method to calculate a PVS. > I read a new paper on portal rendering that works for indoor > and outdoor scenes (well very limited outdoor scenes) called > "breaking the walls", released this year. It had automatic > portal placement that is supposed to be better than the bsp > automatic placement of portals. Quite an interesting paper, although I'm not sure how well it would compare to a more advanced BSP->portal method, especially in the face of less limited outdoor areas. - Neil. |