I am currently debating with myself over what kind of visibility culling technique to use in my rendering system, and I have pretty much narrowed it down to two choices: BSP trees and octrees. I have experimented with voxel storage in the past, and used sparse voxel octrees, but I have never used a BSP tree. In the project that I am currently working on, the (outdoor) environments being rendered will be just big enough to make use of a LOD system, and are generated from heightmaps, but I was told that an octree would be more fitting for that purpose, and would also be better for collision. I was also told that it is much easier and more straightforward to implement a BSP tree system than it is to implement an octree system. Would a LOD system and large outdoor scenes be a good idea with BSP trees or octrees? I very much appreciate any response.