I had this problem making my 3d pool game but since I was using spheres, which are all points equidistant from the center, there are ways around this. I got perfect collision detection just by calculating the distance from one sphere to another and when they were 2*radius away, then I would allow a collision to take place, using scan_entity will also work as that can use a spherical "hull" to calculate how far another object is.