swift - 让 AR 视频适应背景

标签 swift scenekit arkit

我有一个视频,当在 AR 场景中检测到他的第一帧时开始播放。这幅画似乎栩栩如生。视频和图片用相同的颜色绘制。 如何动态调整视频以适应不同光照的场景?

What I have now – color of video is very different from background color
What I want to achieve. Example 1
What I want to achieve. Example 2 in another lighting
.
我使用 SceneKit
我在 SKScene 上添加了 SKVideoNode
我在方法中编写了代码

func renderer(_ renderer: SCNSceneRenderer, didAdd node: SCNNode, for anchor: ARAnchor)

最佳答案

在 ARKit 2 中,您可以使用 ARWorldTrackingConfigurationenvironmentTexturing 属性向场景添加逼真的光照。如果您不需要非常具体,则可以将其设置为 .automatic;如果您想完全控制环境纹理,则可以将其设置为 .manual

https://developer.apple.com/documentation/arkit/adding_realistic_reflections_to_an_ar_experience 本页更好地解释了环境纹理

对于 ARImageTrackingConfiguration,您可以向视频场景添加灯光并使用 ARLightingEstimate 中的属性更新其灯光。从 ARSessioncurrentFrame 属性获取 ARLightingEstimate,或者通过将 View Controller 设置为委托(delegate)并使用 session didUpdate 框架 方法

关于swift - 让 AR 视频适应背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53155643/

相关文章:

json - 在 Swift 结构中使用 guard 不会初始化所有属性

ios - CAEmitterCell 以两个相反的方向发射(一个是错误的)

ios - 在 swift 文件之间共享一个变量

ios - ARKit 添加 X 翻转的 2D 视频

ios - 使用 ARSCNPlaneGeometry 获取 SCNPhysicsShape 会生成球体形状而不是平面

ios - 如何将视觉框架坐标系转化为ARKit?

Swift:使用命令行工具将 .strings 文件解析为 .csv 文件

iphone - 游戏中3D模型动画的基本解释

swift - SceneKit 和 ARKit 中的 simdTransform 是什么?

ios - 在 ARFaceTracking session 中从 ARFaceAnchor 查找头部倾斜角度