I have an interaction script on my first person controller. The script sends out an Raycast to detect objects that are interactable. If the object can be picked up and held in front of the player it basically sets the objects position to a predefined point in front of the camera.
holdPoint = Camera.main.ViewportToWorldPoint(new Vector3(0.5f, 0.5f, tempDistance));
hit.transform.position = holdPoint;
How would I go about achieving a more gentle hold, like how it is done in most of the elder scrolls games. Is it possible to use something like a spring joint?
Here is an example from Skyrim. 1
Hope this is clear enough, not really sure how to explain it.
Thanks - Matt