Camera smooth movement with touch

i want to move the camera when button press and camera follow the ball smoothly and when i drag finger on screen(only horizontally) then camera change the position smoothly. any help would be greatly appreciated.

using UnityEngine;

public class CamaraFollow : MonoBehaviour
{
public FixedTouchField TouchField;
protected float CamaraAngle;
protected float CamaraAngleSpeed= 0.25f ;
public GameObject MainCamara;
public Vector3 offset;
void FixedUpdate()
{
CamaraAngle += TouchField.TouchDist.x * CamaraAngleSpeed;

MainCamara.transform.position = transform.position + Quaternion.AngleAxis(CamaraAngle, Vector3.up) * offset;
MainCamara.transform.rotation = Quaternion.LookRotation(transform.position + Vector3.up * 2f - MainCamara.transform.position, Vector3.up);
}
}

Please use code tags: Using code tags properly

How to report problems productively in the Unity3D forums:

http://plbm.com/?p=220

Help us to help you.