Label3D disappear if using scene manager

Godot Version

v4.4.1.stable.flathub [49a5bc7b6]

Question

Hi, I’ve started to make a scene manager as it’s very usefull for the project I’m making, but I noticed that some Label3D just disappear when using it…
I looked up everywhere but can’t undertstand why it’s doing it.
Does anyone know such an issue ?

Can you show your Scene tree for the 3D level selector? And the scene manager script? I’m guessing maybe a Node is breaking the Node3D family tree, each Node3D inherits it’s position/scale from it’s parent, but if the parent isn’t a Node3D it won’t inherit anything.

Sure, here’s the lobby code:

extends Node3D

@onready var camera: Node3D = $"Camera"
@onready var light: OmniLight3D = $OmniLight3D


var levelsList: Array[int] = [0, 1, 2, 3]
var currentLevel: int = 0
var decalage: int = 3
var lerpWieght: float = 0.25

func _ready() -> void:
	for l in get_tree().get_nodes_in_group("LevelLabels"):
		if(l.name == "LLabel" + str(currentLevel)):
			l.set_font_size(32)
		else:
			l.set_font_size(0)

func _physics_process(delta: float) -> void:
	camera.global_position = Vector3(lerpf(camera.global_position.x, currentLevel*decalage, lerpWieght), 2, 4)
	light.global_position = Vector3(lerpf(light.global_position.x, currentLevel*decalage, lerpWieght), 2.65, 1.785)
	
	for l in get_tree().get_nodes_in_group("LevelLabels"):
		if(l.name == "LLabel" + str(currentLevel)):
			l.set_font_size(lerpf(l.get_font_size(), 32, 0.3))
		else:
			l.set_font_size(lerpf(l.get_font_size(), 0, 0.3))
	
	if Input.is_action_just_pressed("ui_left"):
		currentLevel = clamp(currentLevel-1, 0, levelsList.size()-1)
	elif Input.is_action_just_pressed("ui_right") :
		currentLevel = clamp(currentLevel+1, 0, levelsList.size()-1)
	elif Input.is_action_just_pressed("ui_accept"):
		if currentLevel == 0:
			VAR.sceneManager.changeScene("res://scene/levels/level" + str(currentLevel) + ".tscn", "level")

And here is the lobby tree: