Jump to content
  • Advertisement
Sign in to follow this  
ShmeeBegek

Visibility calculation (Ex. Quake 3 Clusters)

This topic is 4953 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I've tried to google search this for hours, to no avail. I am looking for a good algorithm to work out the visibility clusters in a Quake-3 style BSP (although I am happy with this method I would also take suggestions on a better method for visibility). Thanks for all suggestions / links, ~SPH

Share this post


Link to post
Share on other sites
Advertisement
Are you talking about actually compiling the PVS? I don't have a good answer for you - I have a general idea of the process but have never coded it. Are any of the Quake-related tools open-source? That might be a good place to start.

The second Watts/Policarpo 'Fly 3D' book has a description of the process. However, IIRC it bails at the end and uses point sampling for computing portal visibility, rather than the exact method using anti-penumbras. But it does describe at least part of the algorithm.

Several years ago I had a detailed tutorial on the process that I got somewhere online. Unfortunately, it's long gone and I have no idea where it came from :(

Sorry I can't help you more. From what I understand PVS compiling is actually kind of a tricky process due to floating point issues, as well as the overall code complexity.

Share this post


Link to post
Share on other sites
Well all that I have in this is a simple BSP and I need to calculate the visibility from all of the leaves to all of the other leaves (in Quake 3 this info. is stored in the form of 'clusters'). I need this to be able to draw only the visible scene and such. The problem does seem to be quite complex, but I would expect there to be a tutorial or at least a paper available on it?

Thanks, ~SPH

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!