从 OGRE3D 引擎中的特定摄像机视图中可以观察到哪些顶点

Which vertices is observable from the specific camera view in OGRE3D engine?

本文关键字:观察 顶点 摄像机 引擎 OGRE3D 视图      更新时间:2023-10-16

我是一个新用户Ogre3d。我的应用是在机器视觉领域。在这方面,我遇到了一个问题,如果您帮助我,我将不胜感激。在我的应用程序中,加载了骨骼和骨骼的3D模型(人体模型)。我以编程方式更改骨骼角度。我有一个相机视图。

我的问题是,如何访问从相机视角可观察到的顶点?换句话说,从特定相机视图的视角可以看到哪些顶点?

为我糟糕的英语道歉。

编辑:您正在寻找视锥体和遮挡剔除,此答案仅涉及视锥体部分。

听起来您想检查相机的视锥体

http://www.ogre3d.org/docs/api/1.9/class_ogre_1_1_frustum.html

特别是,看看这个函数,它可以让您根据视锥体检查顶点:

http://www.ogre3d.org/docs/api/1.9/class_ogre_1_1_frustum.html#aa9acad8da2ff711edfbcc49240e2cb94

virtual bool Ogre::Frustum::isVisible(const Vector3 & vert,
                                      FrustumPlane * culledBy = 0) const

请注意,您可能希望首先检查整个对象的性能,具体取决于场景的外观。还有一些有用的函数可以检查边界框或球体,以防您需要它们。