我正在使用ARKit和SceneKit框架开发一个应用程序。我能够渲染我的3D对象,创建覆盖等。我想加载一个GIF动画像覆盖在 ARSession 点击我的一个子节点。这可能吗?
ARSession
我试着添加 SKScene 作为我的 SCNScene 就像下面,看起来不错。
SKScene
SCNScene
informationOverlay = InformationOverlayScene(size: self.sceneView.frame.size) self.sceneView.overlaySKScene = informationOverlay
但是如何加载这个GIF文件呢 SKScene公司 或 SCNNode ?
SKScene公司
SCNNode
下面的问题回答了如何在 SKNode : Simple Gif like animation with Spritekit
SKNode
您可以使用projectPoint来投影 SCNNode (指3D模型)移动到屏幕上的2D位置,然后使用该位置作为 包含动画。这样,动画将始终面向屏幕。
或者,可以将包含动画的核心动画层指定给 .diffuse.contents a的属性 SCNMaterial 并将其分配给 SCNPlane 可以将其添加到场景中并放置在三维模型上方。如果希望该平面朝向相机,只需指定 .pointOfView.orientantion 您的财产 SCNView 到 SCN节点 这保持了 SCN平面 .
.diffuse.contents
SCNMaterial
SCNPlane
.pointOfView.orientantion
SCNView
SCN节点
SCN平面