Olá, tudo bem?
Sim isso faz certo sentido mas variáveis de tipos primitivos e locais não alocam memória na Heap então não precisam passar por Garbage Collector. Você vai ter um aumento de perfomance ridiculamente pequeno em sacrifício da legibilidade do seu código e provavelmente alguns bugs por tentar reutilizar variáveis. Além disso quando a sua função roda a execução já está sendo alocada na Stack então essas variáveis tem custo muito baixo e são de curto prazo porque quando a thread termina a memória da Stack já é liberada. Apesar disso tome cuidado com as ações executadas pra não dar overflow de memória na Stack que inclusive é o nome do principal fórum de programação (Stack Overflow haha).
Use variáveis na Heap para variáveis que realmente custam memória, por exemplo, quando você faz um Camera.main
parece algo idiota mas é algo custoso para a Unity percorrer os objetos para achar a MainCamera ou então variáveis que serão utilizadas em for loops. Essas são variáveis que devem ter uma longevidade pois custam processamento pra acontecer e devem ser cacheadas se possível.
Resumindo é importante entender como a Unity lida com a memória e como ela é alocada e desalocada no nível do computador que é um conceito mais de programação. E sempre bom tomar cuidado não com essa alocação mas com o custo do que você está fazendo.
Abaixo estou deixando um artigo da Unity sobre isso e ao final dele tem alguns links úteis.
https://unity3d.com/pt/learn/tutorials/topics/performance-optimization/optimizing-garbage-collection-unity-games