Red-Point de Alpha Outdoors: Escalada para las masas con .NET MAUI, Unity y Azure
Cliente
Alpha Outdoors: Red-Point
Productos y servicios
.NET MAUI
Unity
Azure Storage
Sector
Software y Consultoría
Tamaño de la organización
Pequeño (1-100 empleados)
País o región
Australia
A principios de 2023, el apasionado escalador Martín Mora fundó Alpha Outdoors tras sufrir un angustioso accidente en el que estuvo a punto de caer por calcular mal la dificultad de una ruta de escalada. Este incidente puso de manifiesto la necesidad de una aplicación que hiciera la escalada más segura y accesible, lo que hizo surgir la idea inicial de su aplicación móvil de .NET MAUI Red-Point. Martin se asoció con Matthew Robbins, un experimentado desarrollador de .NET con experiencia en la creación de aplicaciones de éxito y de las apreciadas extensiones de MFractor para Visual Studio. Juntos, se embarcaron en la misión de revolucionar la experiencia de la escalada.
Un compañero de escalada digital
Antes de Red-Point, los escaladores dependían de guías físicas, que a menudo eran engorrosas, difíciles de interpretar y propensas a degradarse en los duros entornos al aire libre. Red-Point digitalizó esta información, ofreciendo navegación basada en GPS y visualizaciones detalladas de rutas en 3D a las que se podía acceder sin conexión para reducir el riesgo de que los escaladores se embarcaran en rutas incorrectas o peligrosas.
Recopilación de datos innovadora con drones
Hay más de 500 zonas de escalada en Red-Point y cada una de esas zonas comienza como escaneados en 3D para capturar datos topográficos detallados de cada ruta de escalada. Estos drones capturan imágenes de alta resolución de las paredes rocosas, que luego se procesan para generar modelos 3D detallados. El uso de drones permite cartografiar con precisión las zonas de escalada y ofrecer a los escaladores información valiosa para planificar sus escaladas con mayor eficacia.
El proceso de ingesta de datos de Red-Point funciona
- Escaneado 3D: unos drones junto con cámaras LiDAR y iPhones examinan los sitios de escalada, capturando datos visuales exhaustivos.
- Procesamiento de datos: los datos recopilados se procesan para crear modelos 3D precisos de las áreas de escalada.
- Integración con la aplicación: los modelos 3D se integran en la aplicación Red-Point usando Unity y .NET MAUI. Los escaladores pueden interactuar con estos modelos para planificar sus ascensos, evaluar las dificultades de las rutas y mejorar su seguridad.
Este enfoque garantiza que los escaladores tengan acceso a la información más precisa y actual, lo que mejora significativamente su experiencia de escalado.
Opciones de tecnología y uso
Inicialmente, el equipo experimentó con Unity para crear una aplicación de prueba de concepto, pero rápidamente se dio cuenta de que no era ideal para la experiencia del usuario que habían previsto. Robbins, con su experiencia en .NET y Xamarin.Forms, ha propuesto la integración de las capacidades 3D de Unity con .NET MAUI para obtener una apariencia más nativa. Este enfoque híbrido les permitió aprovechar las ventajas de Unity para la representación 3D al tiempo que usan .NET MAUI para una integración perfecta con componentes nativos de la interfaz de usuario y otras funcionalidades.
Componentes tecnológicos clave usados:
- .NET MAUI: para crear las funcionalidades básicas de la aplicación y la interfaz de usuario nativa.
- Unity: para controlar la representación 3D de visualizaciones de rutas detalladas.
- Azure: para la autenticación, la administración de datos y los servicios en la nube.
La integración de .NET MAUI y Unity en la aplicación Red-Point ha sido crucial para ofrecer una experiencia de usuario fluida y de alto rendimiento. .NET MAUI se ocupa de funcionalidades básicas como la administración de datos y la autenticación, aprovechando su sólido ecosistema de bibliotecas y los servicios de Azure para los procesos de back-end. Unity destaca en la representación de entornos 3D detallados, esenciales para visualizar rutas de escalada y datos de acantilados escaneados en 3D. Matthew Robbins describió su configuración como una relación cliente-servidor dentro de la aplicación, en la que Unity se comunica a través de un canal de datos con componentes de .NET MAUI. Esta arquitectura garantiza un intercambio de datos eficaz y una interfaz de usuario receptiva, combinando lo mejor de ambos marcos para mejorar el rendimiento de la aplicación y la experiencia del usuario.
Interoperabilidad entre .NET MAUI y Unity
La integración de .NET MAUI con Unity ha sido una piedra angular en el desarrollo de la aplicación Red-Point, ya que proporciona una combinación única de capacidades que mejoran tanto el rendimiento como la experiencia del usuario. La decisión de combinar .NET MAUI para las funcionalidades básicas de la aplicación con Unity para sus componentes 3D se basó en los puntos fuertes de cada plataforma. .NET MAUI se encarga de la administración de datos, la sincronización, la autenticación y la experiencia del usuario, aprovechando su sólido ecosistema de bibliotecas y su perfecta integración con los servicios de Azure. Esto permite un desarrollo rápido y una administración sencilla de los procesos de back-end. Unity, por su parte, destaca en la representación de los complejos entornos 3D necesarios para las detalladas rutas de escalada y la visualización de datos de acantilados escaneados en 3D.
Matthew Robbins describió la configuración como una relación cliente-servidor dentro de la aplicación, en la que la instancia de Unity se comunica a través de un canal de datos con los componentes de .NET MAUI. Esta arquitectura facilita el intercambio de datos eficaz y el procesamiento de instrucciones entre los dos marcos, lo que garantiza una experiencia de usuario fluida y dinámica. El uso de .NET MAUI permite al equipo usar características avanzadas de .NET, como la programación asincrónica y el paralelismo, que son menos maduras en el ecosistema de Unity. Además, las amplias bibliotecas de .NET disponibles a través de NuGet simplifican significativamente el proceso de desarrollo, lo que permite funcionalidades como la visualización de datos en tiempo real y operaciones de datos complejas con una sobrecarga mínima.
Ventajas de .NET MAUI
.NET MAUI permitió a Alpha Outdoors optimizar el rendimiento de Red-Point en varias áreas clave.
- Administración eficaz de los recursos: el equipo se centró en la administración eficaz de los recursos para evitar que la aplicación consumiera demasiada memoria o capacidad de procesamiento. Esto implicó optimizar el código, reducir los procesos en segundo plano innecesarios y garantizar que las características de la aplicación fueran ligeras y receptivas.
- Programación asincrónica: al usar técnicas de programación asincrónica, el equipo pudo mejorar la capacidad de respuesta de la aplicación y reducir la probabilidad de que se produjeran cuellos de botella en el rendimiento. Este enfoque permitía que la aplicación controlara varias tareas simultáneamente sin causar retrasos ni interrupciones.
- Almacenamiento en caché y compresión de datos: para mejorar la velocidad de recuperación de datos y reducir los tiempos de carga, el equipo implementó mecanismos de almacenamiento en caché y técnicas de compresión de datos. Esto garantizaba que los datos a los que se accede con frecuencia estuvieran disponibles fácilmente y minimizaba la cantidad de datos que debían transferirse a través de la red.
- Supervisión y pruebas de rendimiento: el equipo llevó a cabo supervisiones y pruebas de rendimiento periódicas para identificar y abordar cualquier problema potencial. Para ello se usaron herramientas de creación de perfiles para analizar el rendimiento de la aplicación, se realizaron pruebas de estrés para simular cargas elevadas de usuarios y se recabó la opinión de los probadores beta para identificar áreas de mejora.
- Interfaz de usuario optimizada: el equipo prestó especial atención a la optimización de la interfaz de usuario para garantizar animaciones fluidas, transiciones rápidas y un retardo de entrada mínimo. Para ello se utilizó la aceleración por hardware siempre que fue posible y se optimizó la canalización de representación para ofrecer una experiencia de usuario fluida y receptiva.
Escalado con .NET y Azure
.NET MAUI proporcionó la base para crear una aplicación receptiva y de alto rendimiento capaz de manejar tareas complejas como la representación de rutas en tiempo real y la sincronización de datos. Su extenso soporte de bibliotecas y sus capacidades de integración con otros servicios Microsoft fueron fundamentales para superar los retos técnicos iniciales. Azure desempeñó un papel crucial en la gestión de la entrega de contenidos, garantizando que la aplicación siguiera siendo fiable y eficiente, incluso a medida que la base de usuarios crecía rápidamente.
Hitos de éxito:
- Crecimiento rápido: tras su lanzamiento, Red-Point ganó una tracción significativa, pasando de 200 a 10 000 usuarios en cuestión de semanas, impulsado por la viralidad de las redes sociales.
- Adopción por parte de los usuarios: la aplicación escaló rápidamente posiciones en la App Store de iOS, lo que puso de manifiesto su demanda en el mercado y la eficacia de su pila tecnológica.
Conclusión
Al aprovechar el amplio conjunto de tecnologías de .NET y los servicios de Azure, Alpha Outdoors no solo creó una aplicación sofisticada, sino que también se posicionó para un crecimiento y una innovación continuos en la comunidad de escaladores. El éxito de Red-Point subraya el poder de la integración de tecnología innovadora con una visión clara para resolver problemas del mundo real. Alpha Outdoors planea aprovechar .NET a medida que siga desarrollando Red-Point y aspira a incorporar más contribuciones de la comunidad en sus rutas de escalada.
¿Listo para empezar?
Nuestro tutorial paso a paso le ayudará a ejecutar .NET MAUI en su equipo.