adjusted interop to accumulate; TODO: box intersect normal