目标是模拟类似于这些图像的照明:
关于 SceneKit 光照以及不同光照类型如何相互作用的文档很少(例如,如果您将聚光灯添加到已经存在环境光的场景中会发生什么),因此通过痛苦的反复试验,我们有了走到这一步:
如场景图中所示,有环境光和聚光灯。(全向光和定向光被隐藏了。)光斑锥体内的阴影和照明都非常好,但光锥之外的一切都是黑色的。
问题1:你是怎么做到的,所以斑点锥外的区域不是黑色的?场景中有一个环境光(不是默认的,是明确添加的),所以不应该使圆锥体外部的区域变亮吗?
问题2:理想情况下,如果在圆锥体内部,整个场景将是litas,同时保留阴影。这可能吗?将光点移动到较高的 Y 值(例如 1000)会点亮整个场景,但冷色阴影会消失。
问题 3:在下面的屏幕截图中,启用泛光灯会洗掉光斑的锥体。这是预期的行为吗?你怎么能把灯组合起来,这样它们就不会互相冲刷掉?
屏幕截图 2(启用泛光灯会清除聚光灯):