Eu entendi o propósito dela ser public e static, para poder ser acessada em todos os scripts e ter sempre o mesmo valor em todos os locais que for utilizada. Também entendi que meuAudioSource vai receber o componente AudioSource. Ok.
Mas estou tentando entender o motivo de criar essas duas variáveis. Ambas são do tipo AudioSource e instancia vai receber meuAudioSource. Por que não posso apenas criar só a variável instancia e atribuir o componente AudioSource a ela? Não seria a mesma coisa?
Ficaria assim:
public class ControlaAudio : MonoBehaviour {
public static AudioSource instancia;
void Awake()
{
instancia = GetComponent<AudioSource>();
}
}
Ou também poderia criar meuAudioSource como public e static, no lugar de instancia. É uma dúvida só pra saber que problema eu teria se fizesse o código assim, imagino que exista alguma peculiaridade que não estou enxergando.