View difference between Paste ID: m1UkGFaJ and iUJztpat
SHOW: | | - or go back to the newest paste.
1
var colorStart : Color = Color.red;
2
var colorEnd : Color = Color.green;
3-
var duration : float = 1.0;
3+
var animationDuration : float = 1.0;
4-
var elapsed: float = 0.0;
4+
private var startTime : float;
5-
var finished : boolean = false;
5+
private var endTime : float;
6-
var animDurationInFrames : float = 0.4;
6+
7
function Appear () {
8
9-
function Update () {
9+
    renderer.enabled = true;
10
    
11-
        if (elapsed < duration && finished == false) {
11+
    startTime = Time.time;
12-
                renderer.material.color = Color.Lerp (colorStart, colorEnd, elapsed);
12+
    endTime = startTime + animationDuration;
13-
        } else {
13+
14-
                finished = true;
14+
    while (Time.time < endTime) {
15-
        }
15+
    
16
        var i = Mathf.InverseLerp(startTime, endTime, Time.time);
17-
		if (finished == true) {
17+
        renderer.material.color = Color.Lerp (colorStart, colorEnd, i);
18-
				renderer.material.color = Color.Lerp (colorEnd, colorStart, elapsed);
18+
        finished = (Time.time > endTime);
19-
		}
19+
        yield null;    
20-
        
20+
    } 
21-
        if (gameObject.renderer.enabled && gameObject.renderer.enabled == true) {
21+
    
22-
                        elapsed = elapsed + (Time.deltaTime / animDurationInFrames);
22+
    renderer.enabled = false;
23-
        }
23+
24-
        
24+