Problem with Mathf.Lerp

I have a problem with math.lerp function. i want to make a guitexture to be full transparency, and i want this to happend smoothly in 2 seconds. And i am using the following code:

public GUITexture gt = null; // i assign in the inspector a 
                             // GUITexture object

void Update()
{
   float alpha = Mathf.Lerp(1.0f,0.0f,Time.deltaTime*2.0f);
   gt.color = new Color(1.0f,1.0f,1.0f,alpha);
}

I think that there is a problem with the Lerp function, because i use the Debug.Log function to display alpha variable into the console, and instead of going till 0.0f, it stops somewhere at 9.123…

P.S. Sorry for bad english :slight_smile:

As far as I remember lerp function with parameters a, b and c respectively, is calculated as a + c*(b-a). Proceeding from it it is necessary to correct your code a little:

 public GUITexture gt = null;
 public float speedsmooth = 2.0f; // your speed smooth, but not time
 private float myAlpha = 1.0f;

 void Start() {
  myAlpha = 1.0f; // maybe you need other value
 }

 void Update() {
  myAlpha = Mathf.Lerp(myAlpha,0.0f,Time.deltaTime*speedsmooth);
  gt.color = new Color(1.0f,1.0f,1.0f,myAlpha);
 }

I hope it to you will help.