Camera.current once set to true never goes back to false until clear_current() is called on the camera object

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By Skarltar

Looking through the source code it looks like Camera3d.current doesn’t get switched back to false unless clear_current is specifically called. Is this the intended behaviour? I have noticed that when cycling through all my camera’s using the make_current() function, all my other cameras are still showing as current when checking the current variable (this calls is_current() in the C++ side).

Edit: it looks like in editor the correct values are shown but i think that is due to is_current() not actually checking the current value and simply checking if the camera matches the current camera assigned to the viewport.

I suppose the boolean mostly exists for camera setup in the editor, so that when the game starts it knows which one to make current first, since it’s comes from a variable and not a function call.

Zylann | 2023-07-07 17:05