diff --git a/scripts/webcam_display.gd b/scripts/webcam_display.gd index 58d4190..1b254a1 100644 --- a/scripts/webcam_display.gd +++ b/scripts/webcam_display.gd @@ -18,9 +18,12 @@ var _has_received_frame: bool = false func _ready() -> void: - # Get or create the material + # Get or create the material — duplicate to ensure each instance has its own _material = material_override as StandardMaterial3D - if _material == null: + if _material != null: + _material = _material.duplicate() as StandardMaterial3D + material_override = _material + else: _material = StandardMaterial3D.new() material_override = _material