我正在使用 ARKit 和 SceneKit 框架开发应用程序。我能够渲染我的 3D 对象,创建叠加层等。我想在我的一个子节点之一上点击时加载ARSession
中的叠加层等 GIF 动画。这可能吗?
我尝试将SKScene
作为覆盖添加到我的SCNScene
,如下所示,它看起来不错。
informationOverlay = InformationOverlayScene(size: self.sceneView.frame.size)
self.sceneView.overlaySKScene = informationOverlay
但是如何在SKScene
或SCNNode
中加载此 GIF 文件?
1 回答
以下 SO 问题回答了如何在
SKNode
内显示动画:使用 Spritekit 的简单 Gif 动画您可以使用 projectPoint 将
SCNNode
(您的 3D 模型)的位置投影到屏幕上的 2D 位置,然后将其用于包含动画的SKNode
的位置。这样,动画将始终面对屏幕。或者,您可以将包含动画的“核心动画”层分配给
SCNMaterial
的.diffuse.contents
属性,然后将其分配给SCNPlane
,然后可以将其添加到 3D 模型上方的场景和位置。如果您想让飞机面向相机,只需将SCNView
的.pointOfView.orientantion
属性分配给保存SCNPlane
的SCNNode
即可。