Blender "cast shadow" not preserved for lights

I’m working on a scene with Blender that I export to gltf (with lights).

In Blender, I have a directional light (Spot) with “Cast Shadow :ballot_box_with_check:” opt-in in the panel.

When importing the gltf into my threejs scene, it’s like the “Cast Shadow” Blender option was not preserved and I have to manually traverse the objects tree to find and re-enabled it manually:

scene.traverse(n => {
  if (n.isLight) {
    n.castShadow = true // why I have to re-enable this?

Do you know if this is intented?

Thank you

Light support in glTF is defined in the KHR_LIGHTS_PUNCTUAL extension. This extension does not honor shadow related properties though. Because of that, Blender can’t export the setting and thus GLTFLoader can’t set Object3D.castShadow.

1 Like

Thank you, I’ve just opened an issue about this. For reference: "Cast Shadow" Blender option is not exported · Issue #2133 · KhronosGroup/glTF · GitHub