As coroutines são funções úteis para implementar tarefas que devem ocorrer ao longo de várias frames. Neste posto vamos ver como animar a camera de um ponto inicial para outro ponto final com uma determinada duração em segundos. A duração da animação é armazenada numa variável para que possa ser facilmente ajustada. A função é executada quando o utilizador premir a barrar de espaços. void Update () { if (Input.GetKeyDown(KeyCode.Space)) { if(func!=null) StopCoroutine(func); func = StartCoroutine(smoothMoveCamera()); } } Precisamos de algumas variáveis: public float duration = 2.0f; public float xStart = -5.0f; public float xFinish = 5.0f; Coroutine func; A primeira define a duração em segundas da animação. A segunda o ponto inicial e a terceira o ponto final, ao longo do eixo dos x. Por temos uma referência para a coroutina para que seja possível parar a sua execução, se necessário.