在 Scenekit 中绘制轴图标

Draw axis icon in Scenekit

我正在尝试在从 SCNView 子类化的视口角绘制一个小图标,就像大多数 CAD 程序中存在的那样:

我考虑过两种选择:

  1. 使用 SceneKit,并使用嵌套 SCNNodes 进行某种转换以将图标固定在角落。
  2. 使用 OpenGL 和 this 之类的东西来达到预期的效果。

第一个选项似乎可行,但我无法全神贯注于所需的适当转换。

第二个选项更接近我已经在另一个 OpenGL-based 应用程序中尝试过的选项,但是由于我在 SceneKit 方面的经验有限,我不知道如何混合 OpenGL 和 SceneKit 渲染。唯一的可能性似乎是 SCNNodeRendererDelegate 协议的 -renderNode:renderer:arguments: 方法,在我的情况下这似乎有点矫枉过正,因为如果我使用它,我实际上必须自己完成所有渲染。

有什么想法吗?

这可以使用纯 OpenGL 代码完成。

-renderer:didRenderScene:atTime: 回调中,只需在视图 space 中绘制 3 个轴,以便它们始终位于同一位置。