首页 > 解决方案 > RealityKit – 如何为自然光创建阴影捕捉器?

问题描述

我想创建一架飞机:

func getShadowPlane(_ width: Float, _ height: Float) -> ModelEntity {

    let sphereResource = MeshResource.generatePlane(width: width, 
                                                    depth: height)
    let myMaterial = ShadowMataerial . ????
    return ModelEntity(mesh: sphereResource, materials: [myMaterial])
}

并将其添加到我的特定位置的锚点。我想从我的相机获得的 RealityKit 能够捕获/生成的“照明”中获取阴影数据。

我不想用

AnchorEntity(plane: AnchoringComponent.Target.Alignment.horizontal)

知道如何实现吗?

我找不到 shadowCatcher 材料。

标签: swiftaugmented-realityarkitrealitykit

解决方案


恐怕没有公式可以在 RealityKit 2.0 中仅捕获阴影,例如 SceneKit 的:

SCNMaterial().lightingModel = .shadowOnly

但是,您可以使用基于图像的假阴影.png,也可以实现Metal来单独捕捉阴影。


推荐阅读