I want to be able to determine if OBBs or Triangles intersect a Frustum. Specifically, in my case, it is for selection. So I need the result to be accurate, as opposed to some rough frustum culling approximation.
I've done a bit of research, and a lot of the algorithms I have found simply test to see if all the points of the geometry are on one side of any frustum plane, if so, they assume it is outside of the frustum, else it is inside (or intersects). But this doesn't seem to really work, as you can quite easily have points that are all outside the frustum, but are not all on any one side of a frustum plane.
I have seen other techniques where they do the above test first, and then they flip the test around and use the OBB planes to then test the frustum points. I assume this will also work with the triangle case? and that I just test the plane of the triangle with the normal being rendered (if back face culling is enabled)
Or should I do these calculations in 2D space? so transform the points by the ViewProj matrix, and use SAT (something I am not familiar wih yet) to test for intersection of the OBB points in NDC space and the triangle points in NDC space?