【问题标题】:How to Add SCNView on top of a SKView如何在 SKView 之上添加 SCNView
【发布时间】:2015-11-14 20:37:06
【问题描述】:

我正在尝试在SKView 之上添加SCNView

我的层次结构以UIViewController 开头。 从那里,我在UIViewController 的视图顶部呈现SKScene。 然后我加了几层SKSpriteNodes

从视觉上讲,我想在SKSpriteNodes的顶层顶部添加一个SCNView,以便我显示一行SCNBoxes

除了创建另一个UIViewController,将我的所有组件添加到那个新控制器之上,然后将它添加到我当前现有的ViewController之上之外,我还有什么办法吗?

我会很欣赏 Swift 代码中的解决方案,但我能够读/写 Objective-C,我只是不想将任何 Swift 与 Objective-C 混合,因为我不需要在我当前使用任何项目。

【问题讨论】:

    标签: ios swift uiviewcontroller sprite-kit scenekit


    【解决方案1】:

    如果您想在 SpriteKit 视图中渲染 3D SceneKit 内容,请使用SK3DNode。然后,您可以让 SK 和 SCN 渲染器协作以绘制到相同的 OpenGL 上下文(或 Metal 可绘制对象)中,而不是尝试在 UIKit 级别合成两个单独的渲染管道的输出。

    【讨论】:

    • 非常感谢您提供此解决方案。我只需要更改一行代码就可以让一切正常运行(从 SCNView 切换到 SK3DNode)。
    • 是否可能相反,将 SKView 渲染为 SceneKit 平面上的材质/纹理?不像覆盖
    • 我记得在某个地方看到过这个,但是花了 30 分钟谷歌搜索,阅读并没有找到任何东西。我可能很愚蠢。
    • 不是 SKView,但您可以将 SKScene 设置为 material property's contents。我在this answer 中描述了一点。
    猜你喜欢
    • 2016-05-16
    • 1970-01-01
    • 2015-07-25
    • 1970-01-01
    • 2016-01-04
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    • 1970-01-01
    相关资源
    最近更新 更多