Oi, Marcelo!! Tudo bem?
Peço desculpas pela demora em te responder.
No código que você compartilhou, a função Mathf.Repeat
é responsável por fazer o deslocamento "repetir" dentro de um determinado intervalo.
O valor do deslocamento é calculado multiplicando a velocidade pelo tempo atual (Time.time
) e, em seguida, aplicando a função Mathf.Repeat
, que garante que o valor permaneça dentro do intervalo definido por tamanhoRealImagem
.
No entanto, o valor do deslocamento não afeta diretamente a velocidade no transform.position
. Isso ocorre porque, no código, o deslocamento é usado para calcular a posição final do objeto, adicionando-o à posição inicial (posicaoInicial
) e multiplicando por Vector3.left
.
Como o valor da velocidade não depende do deslocamento (mas sim o contrário), ela continuará a mesma (igual a 5) durante toda a movimentação!
Marcelo, espero que tenha ficado mais claro! Caso tenha interesse em aprofundar seus conhecimentos em Unity, deixo como dica de estudo explorar a formação abaixo:
Espero ter ajudado!
Abraço.