SceneKit 中的阴影

Shadows in SceneKit

在我的场景中,我有一个环境光和一个泛光灯,none 其中投射了一个阴影。我的游戏有点像寺庙 运行,玩家不断沿着 z 轴前进。我想添加一个从左到右发光的光,平行于 z 轴,从左到右在每个节点上投射阴影,有点像这个游戏:

我尝试使用 "Spot" 类型的 SCNLight,但随后光线来自 space 中的特定点。我尝试了定向照明,但我所能得到的只是一束从后向前照射的光,并产生了很长的阴影。如果我能改变阴影的长度和光线的方向,那就太好了。我试过这样做:

spotLight.type = SCNLightTypeDirectional
    spotLight.castsShadow = true
    spotLight.shadowMode = SCNShadowMode.Deferred
    spotlightNode.light = spotLight
    spotlightNode.orientation = SCNQuaternion(0.0, 0.0, 1.0, 0.0)
    rootNode.addChildNode(spotlightNode)

通过欧拉角改变聚光灯的方向

spotlightNode.eulerAngles = SCNVector3(-Float(M_PI_4), -Float(M_PI_2), 0)