Attaching lights to ArcRotateCamera

Hey there, doing some visualization work where I need lights attached to the viewer/camera.

It’s straightforward to do this with a free camera via parenting, but that doesn’t work for ArcRotateCameras. I’ve looked back through the forum and can’t find an answer to this specific problem.

Is there a canonical way to either attach the lights or alternatively get the effective up and right vectors to set up my own coordinate system in an observable?



Did you try, for example

scene.registerBeforeRender(function () {
  light.position = camera.position;

Yes, position gets updated, which combined with the target gives me a look at vector. How about the other vectors of the coordinate space? The up vector doesn’t get updated, even when updateUpVectorFromRotation is set to true. (Is that what that property is supposed to do?)

I can always use the camera’s fixed up vector, then normalize it and cross it, but that gets hung up at the pole.

1 Like