Heyo, one way that I see many people doing the aim down sight is by welding an invisible part where the camera gets lerped to which you have already figured out which is awesome! So when you want to make the weapon actually move to the middle you can use two methods, lerp the camera’s CFrame to the aimpart, or set the gun’s primarypart CFrame to the camera using :SetPrimaryPartCFrame() with an offset of course and that should work just fine, I recommend you use the weapon to camera method though as it is less complex and will have fewer issues, I will link you a dev forum post that may help in your situation.