diff --git a/techniques/control/Tunnel/Tunnel.gd b/techniques/control/Tunnel/Tunnel.gd
index b538e250340c9386e10317962c08bfeca6584795..d5d9aeae30abc493a57cdba45ee1a931230dc51d 100644
--- a/techniques/control/Tunnel/Tunnel.gd
+++ b/techniques/control/Tunnel/Tunnel.gd
@@ -88,8 +88,8 @@ func _physics_process(delta):
 					var col = r.get_parent()
 					if col.is_in_group("ivmi_nodes"):
 						#if collision, compute position ratio
-						var col_pos = to_local(col.global_transform.origin)
-						var ratio = col_pos.x+0.5
+						var col_pos = to_local(col.global_position)
+						var ratio = clamp(col_pos.x+0.5,0,1)
 						#set all active parameters
 						for param in tunnel_preset_array[_preset_index]:
 							var value
diff --git a/techniques/control/Tunnel/Tunnel.tscn b/techniques/control/Tunnel/Tunnel.tscn
index 903ea031c8df663ac457d7db54456cb58654c875..f665d753dcd83c10a182438ee58a1e83ca61528c 100644
--- a/techniques/control/Tunnel/Tunnel.tscn
+++ b/techniques/control/Tunnel/Tunnel.tscn
@@ -4,17 +4,17 @@
 
 [sub_resource type="BoxShape3D" id="1"]
 resource_local_to_scene = true
-margin = 0.001
+margin = 0.0
 size = Vector3(1, 0.1, 0.1)
 
 [node name="Tunnel" type="Node3D"]
+transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
 script = ExtResource("1")
 
 [node name="Slices" type="Node3D" parent="."]
-transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
 
 [node name="Area3D" type="Area3D" parent="."]
-transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
+transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.01, 0, 0)
 
 [node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
 shape = SubResource("1")