【发布时间】:2015-03-10 20:21:42
【问题描述】:
我正在尝试在从 SCNView 子类化的视口的一角绘制一个小图标,就像大多数 CAD 程序中存在的那样:
我考虑了两种选择:
- 使用 SceneKit,并使用嵌套的
SCNNodes 进行某种转换,以将图标固定在角落。 - 使用 OpenGL 和 this 之类的东西来实现所需的效果。
第一个选项似乎可行,但我无法理解所需的适当转换。
第二个选项更接近我已经在另一个基于 OpenGL 的应用程序中尝试过的方法,但由于我在 SceneKit 方面的经验有限,我无法弄清楚如何混合 OpenGL 和 SceneKit 渲染。唯一的可能性似乎是SCNNodeRendererDelegate 协议的-renderNode:renderer:arguments: 方法,在我的情况下这似乎有点过头了,因为如果我使用它,实际上我必须自己完成所有渲染。
有什么想法吗?
【问题讨论】:
-
我会使用纯 OpenGL 代码来做到这一点。在
-renderer:didRenderScene:atTime:回调中,只需在视图空间中绘制 3 个轴,以便它们始终位于同一位置。 -
感谢您的建议,使用 OpenGL 可以完美运行。我无法理解我是如何错过那个委托方法的!如果您愿意,请将您的评论作为答案发表,我会接受。
标签: objective-c macos opengl scenekit