Tweening weld's CFrame

Hello everbody, I’ve been making an FPS framework and have ran into an issue. In my framework you can aim your weapon when you hold right mouse. This is achieved by moving the aim part of the weapon towards your camera’s CFrame ultimately moving whole viewmodel closer.

I have an issue with this because I can only do something similar to this: Weapon.AimPart.CFrame = Cam.CFrame

This will move aimpart to the cam making it seem like you’re aiming but its done instantly which in not the desired result. I heard there’s a way of using welds to tween this but I’m not familiar with welds and C1 and C0 to do this so if anyone can help me understand how can I weld these 2 parts together and then somehow transition between the 2 endpoints.

You can convert a world space CFrame to a weld C0 using this formula, otherwise there are certainly other methods though this one should work best as it takes into account the C1 rotation if it has any.