Descripción
El alumno podrá entregar un build completamente funcional y listo para ser probado y publicado en Nintendo Switch por un publisher o estudio con DevKit, cumpliendo los criterios técnicos habituales de la consola y los procesos reales de desarrollo sin hardware propietario.
📚 Distribución estructurada para 20 horas
🕐 Bloque 1 (4h): Fundamentos de porting a consola y requisitos de Switch
- ¿Qué implica portar un juego a consola? Consideraciones clave para Switch.
- Hardware y software de Switch: CPU, GPU, RAM, resolución, controladores.
- Requisitos legales: NDA, portal de desarrolladores, DevKit (referencia únicamente).
- Cómo simular un entorno restringido sin DevKit: limitaciones, benchmarks y metodologías.
- Casos reales de estudios que portan sin DevKit (workflow colaborativo con editor o publisher).
🕑 Bloque 2 (4h): Configuración del proyecto para Switch sin DevKit
- Activación del soporte para Switch en el proyecto (plugin oficial solo disponible bajo NDA — se explican pasos teóricos).
- Estructura necesaria de archivos: Target.cs, Build.cs, Platform.ini.
- Configuración de proyecto para funcionar en entornos comparables:
- Target: 720p/30fps
- Renderización móvil o escalado dinámico
- Creación de perfiles de build equivalentes (DebugGame, Development, Shipping)
- Uso del sistema Device Profiles para emular condiciones de Switch en PC
- Cómo preparar un Shipping Build optimizado sin necesidad de compilar para Switch directamente
🕒 Bloque 3 (4h): Optimización visual, lógica y de recursos
- Optimización con Mobile Renderer como benchmark (preparación para forward shading)
- Reducción de Draw Calls, uso de LODs y reducción de polígonos
- Adaptación de texturas: reducción de resolución, compresión (ASTC, DXT1/5)
- Revisión de materiales: usar Material Instances, evitar transparencias costosas
- Control estricto del uso de Blueprints: reemplazo por C++ en zonas críticas
- Control del Garbage Collector: revisión de referencias, destrucción manual, MarkPendingKill
🕓 Bloque 4 (4h): Preparación de UI, entrada y soporte técnico específico
- Adaptación de interfaces para pantallas de baja resolución y DPI
- Uso de DPI Scaling y canvas adaptativos
- Simulación de entrada con gamepad como equivalente a Joy-Con / Pro Controller
- Mapeo con Enhanced Input System
- Control de vibración mediante Force Feedback y su activación condicional
- Soporte para solo gamepad (sin teclado/mouse)
- Inclusión de SaveGame funcional y persistencia para cartuchos o almacenamiento interno
🕔 Bloque 5 (4h): Verificación sin DevKit y empaquetado para entrega
- Uso de r.ProfileGPU, stat unit, stat scenerendering, unreal insights para validar rendimiento
- Test de estabilidad prolongado: test automático de sesión prolongada (>30 min)
- Validación de memoria: simulación de heap reducido a 3.5GB
- Empaquetado del proyecto con todo el contenido cooked y listo para revisión
- Documentación de entrega: guía técnica, control de dependencias, estructura de carpetas
- Creación de “Switch Ready Build”:
- Assets auditados
- Códigos de control aislados
- Opciones de compilación cerradas
- Testing por perfiles de rendimiento móvil
- Preparación del entorno para colaboración con estudio con DevKit
🧪 Mini proyecto final del módulo:
Entregar un proyecto “Switch Ready” que funcione con todas las restricciones activas:
- Resolución escalable a 720p
- Framerate objetivo de 30 fps
- Assets y materiales optimizados
- Interfaz 100% gamepad-friendly
- Testing de carga y estabilidad