Ios SceneKit计算可视边界?

Ios SceneKit计算可视边界?,ios,scenekit,Ios,Scenekit,因此,根据标题,我试图找出是否有一种好的方法来计算场景的边界,因为通常的帧/边界属性在上下文中实际上不起作用 我基本上需要一种方法,根据xFov/yFov/zNear/zFar的相机设置检查对象是否已移出可视屏幕。到目前为止,我还没有找到一个好的方法。我是否忽略了任何API方法,或者是否需要手动计算 我希望我在这里讲得有道理,如果没有,请告诉我,我会进一步澄清。SCNView符合SCNSceneRenderer的要求,而该方法又有一个名为isNodeInsideFrustum:withPoint

因此,根据标题,我试图找出是否有一种好的方法来计算场景的边界,因为通常的帧/边界属性在上下文中实际上不起作用

我基本上需要一种方法,根据xFov/yFov/zNear/zFar的相机设置检查对象是否已移出可视屏幕。到目前为止,我还没有找到一个好的方法。我是否忽略了任何API方法,或者是否需要手动计算


我希望我在这里讲得有道理,如果没有,请告诉我,我会进一步澄清。

SCNView
符合
SCNSceneRenderer
的要求,而该方法又有一个名为
isNodeInsideFrustum:withPointOfView:
的方法,这正是您要寻找的。根据,它返回:

YES
如果被测节点的边界框与
视点
节点定义的视锥体相交;否则,


使用它看起来像这样:

BOOL isInside = [sceneView isNodeInsideFrustum:nodeToTest
                               withPointOfView:sceneView.pointOfView];
if (!isInside) {
    // the bounding box of nodeToTest is not in the viewport ...
}

啊哈,这看起来正是我需要的,我已经看过你在3d图形方面的工作,如果你能看看这个,我将不胜感激: