Oh yeah. I forgot about the DBC issue.
The only way this would ever work in DBC is if someone made a DLL or other way(memblock, etc.) to detect the distance between two points and see if there is a polygon in that vector. This is way outta my range of programming. If someone invents that for DBC then this code could be slightly modified to do the same thing.
I attempted a generic way of doing this earlier, but it chewed up CPU and didn't work all that great. What I did was load an .X landscape and set it to polygon collision. Next I did a for loop to check from a certain height (Usually the top of the model) to a negative height with setting a sphere to those heights and then checking collision. It was slow.
I just use intersect object. One of the added features of DBPro.
-Kensupen