picking

i want to pick up a cube or capsule in my game with mouse,i find this code but it dont work .what should i do:(

var grabRange: float = 2;
var pickPos: Vector3 = Vector3 (0, 0.5, 1.1);
var force: float = 30;

private var pickObj: Transform = null;
private var rBody: Rigidbody;
private var hadRBody: boolean;
private var freezeRot: boolean;

function Update(){

    if (Input.GetMouseButtonDown(0)){ // if left button pressed...
        var hit: RaycastHit;
        var ray = Camera.main.ScreenPointToRay(Input.mousePosition); // create a ray from the mouse pointer
        // if object "Pick" clicked, and inside grabRange...
        if (Physics.Raycast(ray, hit)  hit.transform.tag == "Pick"  hit.distance < grabRange){
            pickObj = hit.transform; // save the object's transform...
            pickObj.parent = transform; // child it to the player...
            rBody = pickObj.rigidbody; // and get its rigidbody, if any
            if (rBody){ // if already had a rigidbody... 
                freezeRot = rBody.freezeRotation; // save its freezeRotation property
                hadRBody = true;
            } else { // if no rigidbody, add one:
                rBody = pickObj.gameObject.AddComponent(Rigidbody);
                hadRBody = false;
            }
            rBody.freezeRotation =true; // disable physical rotations
        }
    }
    if (Input.GetMouseButtonUp(0)  pickObj){
        if (hadRBody){ // if already had a rigidbody...
            rBody.freezeRotation = freezeRot; // restore freezeRotation
        } else { // if not, destroy the added rigidbody:
            Destroy(rBody);
        }
        pickObj.parent = null; // unchild the object...
        pickObj = null; // and signal that's nothing is picked anymore
    }
}

function FixedUpdate(){
    if (pickObj){
        var error = transform.TransformPoint(pickPos) - pickObj.position;
        rBody.velocity = force * error;
    }
}

For the script to work, the objects need to have a tag called “Pick”. If you did that then try changing the grabRange number to something higher.

i do that but i want my object follow the mouse ,but it didnt work for me.

There’s a drag rigidbody script in the standard assets package that might work.

thanks fire7side:)