I am creating a gun script and wanted to use lerp to move the bullet down range. The problem with this is: Lerp is based on time not speed. This has undesirable affects on bullets. What I mean is: If you shoot at an object that is 1000 studs away the bullet will travel extremely fast to it's target. If you shoot at an object that is 5 studs away the bullet moves slowly to it's target.
I am not interested in using roblox bodymovers as they have undesirable affects on the game itself. ie, Lag.
RayCasting: I've used it, it's great but not realistic. RayCasting will instantly hit a target, unlike a bullet that moves down range before colliding with it's target.