What is in so one BSP tree for example a quake map ( one wall, one room or the whole level is a BSP tree? ).
A BSP tree is data added to the scene to accelerate its rendering.
Basically it’s just a set of planes splitting the whole world in small sets of faces called a LEAF.
A leaf contains a few faces that are very near and that can be displayed in any order - they won’t cover another face from the same leaf.
Using the bsp’s planes, you can get perfect order of rendering of your world. This is not usefull now that we have 3d acceleration: sorting must be done according to texture blinding, not according to depth sorting.
But if you use a PVS (Potentially Visible Set) with your bsp, each leaf will have a list of leafs which can be seen from it. So if you know where your camera is, you’ll be able to render only what is going to be seen on the screen: no room hidden by wall will be displayed for exemple.In the same way you can use PVS to compute lightmaps faster.
Thats great, but where can i get more detailed description of BSP + PVS ?
These are the best BSP/PVS tutorials on the web but the download links are occasionally broken so if you can’t get hold of the files; e-mail me and I’ll send you a copy.
After reading these you will understand more than you ever wanted to about BSP and/or PVS.
BTW - I’m not in any way associated with mr-gamemaker
Having just posted the above I thought I better check the link and I’m afraid they are gone so you can’t get them there.
If you want a copy of the two tutorials though, then just mail me and I’ll send them to you. They are coded in DX but were incredibly easy to re-code in GL as they are so well explained.
Sorry about not being able to just stick them on my page but they’re not on this computer.