Problema:
- En modo F3 (letterbox/integer scale), las notificaciones se pintaban
fuera del área de juego (en las barras negras)
- SDL_GetRenderViewport() devuelve coordenadas LÓGICAS cuando hay
presentación lógica activa
- printAbsolute() trabaja en píxeles FÍSICOS
- Mismatch de coordenadas causaba centrado incorrecto
Solución:
- Nuevo helper getPhysicalViewport() que:
1. Guarda estado de presentación lógica
2. Deshabilita presentación lógica temporalmente
3. Obtiene viewport en coordenadas físicas
4. Restaura presentación lógica
5. Retorna viewport físico
- Notifier::render() ahora usa physical_viewport.w para centrado
Resultado:
- Notificaciones centradas correctamente en F3 letterbox
- Notificaciones centradas correctamente en F4 integer scale
- Modo ventana sigue funcionando correctamente
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>