首页 > 解决方案 > 不需要的自我阴影

问题描述

我有一个使用 SceneKit 进行渲染的 ARKit 应用程序。我正在使用将阴影投射到不可见的地板平面上的定向光。为了做到这一点,我必须(?)shadowMode = .deferred在灯光上使用。但这会导致图像中出现丑陋的自我阴影:

盒子投射自我阴影 我怎样才能避免这种情况并且仍然保持地板上的阴影?灯光看起来不错shadowMode = .forward,但是地板上没有阴影。

标签: iosscenekitarkitshadowdirectional-light

解决方案


很少有方法可以解决这个问题。

  1. 使用 .constant SCNMaterial.LightingModel
  2. 使用SCNMaterialProperty进行操作
  3. 使用节点和光源的categoryBitMask进行操作。希望能帮助到你!

推荐阅读