!SOLVED!

Solution:
#You should read the post so you would understand what it is all about but long story short
if you want to use interpolation with RigidBodies to carry an item for example, you can use the set_linear_velocity()

item.set_linear_velocity((B - item.global_position) * t)

B is the position you are trying to move your item to.
I guess set_linear_velocity works kinda like interpolation but for RigidBodies()


Godot_v4.2.2

Description:
I have a game where a character can walk and carry items.
For picking up an item I made a Node3D point, then I am using lerp() function to interpolate the item’s position to the point’s position.

Problem:
Everything works fine and really smooth except now I can push RigidBody3D through collisions( CollisionShape3D). It looks like the Rigidbody3D slows down for a little bit and then clips through a collision when I am moving my object for example into a wall with a CollisionShape3D, after i let it go it can simply stay there, inside of a collision.


An example of five RigidBodies affected by gravity standing perfectly still


An An example of the same five RigidBodies affected by my carry_item() function clipping through each other and the wall

Details:
Warning, collision layers and masks are right i checked it and i am sure about it so problem is not there. It looks like the collisions still matter, if i will set a small carry power it will be almast impossible to push the object into a wall but it will be glitchy and I will not be able to carry objects fastly.

When i pick up an object i am setting the gravity scale to 0 so this way the gravity is not going to become stronger and eventually smash my object into the floor. After I set gravity_scale to 1 back.

I will extract from the script only the part about carrying object so you dont need to look for it.
Script:
(Creating variables)

#item carrying

var Items := []
var carry_power := 0.2
@onready var holding_position = $“Head/Camera3D/Holding position”

(The part where i use the created list and function bellow in a physics process)

#carrying items
for item in Items:
	if item != null and Input.is_action_pressed("Carry"):
		item.gravity_scale = 0
			
		carry_item(item, carry_power)
	else:
		item.gravity_scale = 1

(The part where i make an array with a object and create a carrying lerp() function)

func carry_item(item, _t):
	item.global_position = lerp(item.global_position, holding_position.global_position, _t)


func _on_area_3d_body_entered(body):
	Items.append(body)


func _on_area_3d_body_exited(body):
	body.gravity_scale = 1
	Items.erase(body)

I am a newbie in Godot and will be very grateful if somebody helps!
English is my second language so I might have made some mistakes here still, i tried to make everything clear about the issue if somebody desires to help.

CakeCadaver
a few seconds ago

So setting a position doesn't take into account any type of physics. It just instantly warps the object to that position, without any care to anything else. When moving an object with physics, you want to apply velocity to the object in the direction you want it to go. After you do that it will be moving on its own within the physics calculation, and can decide if the velocity should be stopped by hitting a collider.

However, for your use-case, it sounds like it would be annoying to constantly try to push the rigidbody into an exact position, so here are two alternative solutions:

To use Lerp:
Before applying the position to the object, check if the position is inside a collider. If it is inside, don't apply the position. I would read through the raycasts section of the documentation, I'm pretty sure there is single point collision check in there somewhere.

The cool physics way:
Use a SpringArm3D. This node waggles your object on a spring around a set point. As you move the springArm3D node using Lerp, the physics calculation will attempt to keep the object as close to the point as it can without being blocked by physics. You can change settings within the node for how the "spring" behaves. This is more involved but can give your object a fun bouncy feel.