04-25-2006 11:16
Out of Sight, Out of My SL
An easy guide to occlusion culling, new in Preview 1.10

There's a new feature in Second Life 1.10 that works seamlessly behind the scenes so you can enjoy a faster, smoother in-world experience. It's called occlusion culling, and it basically means things which you can't see won't be rendered (drawn) by your computer. As a result, your local frames per second goes up, making SL run speedier, and the computer power saved can go towards further benefits like concentrating on what you can see.

How to Use Occlusion Culling:

Occlusion culling is so easy to use: it's automatic! You don't even have to push any buttons or drag any sliders. It's available on most graphics cards that support OpenGL 1.5 or newer, which you can find out by checking your manual or a webpage like http://en.wikipedia.org/wiki/NVIDIA

To give occlusion culling a go for yourself, travel to a very dense area like a city with a lot of stuff. Walk out in the open streets, and then go into a building where there are both windows and walls. Look out a window--hopefully it's a nice view!--and then stand in front of a wall so you can't see what's outside. Wait several seconds while occlusion culling takes effect, and see if you feel a difference while walking back and forth a little.

If you'd like to see the numerical details, just go to View menu > Statistics Bar to bring up a nifty display with lots of info. At the top right, look under where it says Basic/FPS. That's your current Frames Per Second. More is better.


Tips for Using Occlusion Culling:
• The most basic way is to place solid walls, fences, or other objects that'll hide what's behind them. Keep in mind even slightly transparent objects which you can see through won't occlude.
• Objects close together are grouped and won't occlude each other. As a rule of thumb, a wall needs to be about 10 meters away from an object to occlude it.
• Interior environments, like a house, store, or club, will benefit from occlusion culling when you don't see what's happening outdoors. The difference won't be as noticeable in busy locations, because other avatars and their attachments will use a lot of computer power to be rendered, including what's saved via occlusion.
• By using the Debug menu, you can choose a couple advanced options related to occlusion culling. To enable Debug, press Ctrl-Alt-D on a PC or Ctrl-Option-D on a Mac. It'll appear at the top of the screen to the right of the Help menu. There's a lot of things in there, but here's what you need to know:
• Look at Debug > Rendering > Object-Object Occlusion. If it has an X next to it, it's on. You can switch it off and on again--it's a good way to do before/after comparisons. If it's grayed out, this means your graphics card doesn't support occlusion culling.
• To see what's being occluded, select Debug > Rendering > Info Displays > Octree. Objects are outlined in green, occluded areas will glow red, the white boxes outline the smallest possible area in a location to be occluded, and the blue lines from the center of a box mark the objects that won't be drawn if that area gets occluded. Pretty cool, huh?


Feel free to voyage to a variety of different places to gain a better understanding. As you continue to live your Second Life, you'll discover the difference occlusion culling can make for you!