So, how does the camera behave?
Does it just go through models like through "air" ?
Maybe you could set the use_polygon flag in the c_trace to force better detection.
But this is only guessing in the dark...