Singleton en contexto real
Úsalo para coordinar sistemas globales, no para esconder dependencias en todo el proyecto.
Un Singleton en Unity suele definirse con un campo `static Instance` y validación en `Awake()` para impedir duplicados.
`DontDestroyOnLoad` permite mantener esa instancia viva al cambiar de escena, útil para audio o estado de partida.
Si todo termina accediendo al Singleton, revisa diseño: puede convertirse en acoplamiento excesivo si no delimitas responsabilidades.
- Una sola instancia global controlada.
- Persistencia opcional entre escenas.
- Evitar convertirlo en un objeto dios.