One thing to consider is what is the worst-case for your game design. If you're going to be able to go to the top of the hill and see all objects unoccluded at the same time, then an occlusion system will in fact be slowing the performance of your game in that scenario.
Another thing to consider is the consequences of not culling for your target platform and game:
- If it is simply a drop in performance, then the performance drop may alrady be acceptable if you still have playable framerates. This is subjective and contingent upon your genre. A turn-based game can be acceptably played at lower frame rates than a fast-paced FPS might for example.
- However, if a lack of culling means that you get polygon dropout then it's a different story. For example on the Nintendo DS, you can get visible artifacts where polygons simply disappear as you exceed your polygon budget.
The latter may necessitate changes to your level design or the inclusion of some polygon reduction technology.
I've had some success with these techniques for reducing polygons:
precomputed PVS with artist placed sectors for static geometry and with artist placed portals for culling dynamic objects, but then again our project had occlusion characteristics guaranteed by the game design (corridors and rooms with limited outdoor areas). If the camera is in a specific sector, then there will be a limited number of sectors visible from that sector. This means that only the static geometry and dynamic geometry in those sectors needs to be rendered. Of course this only works if your world geometry is amenable to natural occlusion characteristics.
A level of detail (LOD) system where we simply switched to an imposter/billboard for distant objects. In the cases that we did have lots of objects visible, this helped when some of those objects were guaranteed to be far enough from the camera to be rendered with a lower level of detail with no noticeable quality degradation. Imposters/LOD systems are a nice way to reduce polygon count if you don't hit the worst case where you have thousands of objects in the same room very close to the camera and all rendered at full detail.
Simply not drawing distant objects. The pop-out can be minimized by fading these objects out as they go further and then simply not drawing them when the alpha reaches zero. You can also tag these on a per object basis. eg. trees may be drawn at a further range than grass, but mountains would always be visible.