Ich habe ARKit-Szene, wo ich einen Strahler Overhead platzieren, um Schatten zu werfen.Wie entferne ich ein Licht mit shadowMode = in Scenekit/ARKit?
Da ich Schatten auf einer transparenten Ebene werfen möchte, setze ich die Eigenschaft shadowMode
auf deferred (https://developer.apple.com/documentation/scenekit/scnshadowmode/1523758-deferred) im Rampenlicht.
Dies funktioniert, aber wenn ich den Scheinwerfer wieder entfernen, werden die App stürzt mit:
[SceneKit] Error: The shadow node is not registered
[SceneKit] Error: _willExecuteDeferredShadows - no light
Die App nicht abstürzt, wenn Shadow nicht gesetzt ist (Standard: „Vorwärts“)
Wie kann ich das Licht ohne Absturz entfernen?
Es ist schwer, ohne diesen Teil Ihres Codes zu helfen, aber es sieht so aus, als ob Sie die Eigenschaft von Schatten festlegen, bevor Sie es deklarieren. – Zydnar