我使用Metal Framework开发了iOS的实时光线追踪器,它适用于以下类型的光学棱镜,如十二面体、二十面体、八面体、立方体等。我的所有图形都由三角形组成,例如立方体-12个三角形,八面体-4个三角形。我跟踪光线并搜索与图形的交点,然后搜索光线在棱镜中的移动方式。然后射线离开图形,我再搜索其与天空盒子的交点。问题在于复杂的图形上。当我测试立方体时fps为60,但当我测试十二面体时fps为6。在我的算法中,与图形相交与任何三角形相交是相同的。这意味着当我检查光线和图形之间的交点时,我必须检查所有三角形之间的交点。我需要一些思路,如何不检查所有三角形的交点。谢谢。