
Evergine + Avalonia
Interfaces modernas y render 3D industrial en una misma aplicación
Esta nueva release de Evergine incorpora integración con Avalonia, uno de los frameworks de interfaz de usuario más relevantes dentro del ecosistema .NET actual. Esta integración permite crear aplicaciones usando Avalonia con una superficie de render de Evergine integrada, facilitando el desarrollo de soluciones que combinan interfaces modernas, lógica de aplicación empresarial y visualización 3D en tiempo real dentro de una misma experiencia.
Esta novedad refuerza una de las líneas estratégicas de Evergine: no limitarse a ser un motor gráfico aislado, sino ofrecer una tecnología 3D preparada para integrarse en aplicaciones reales, con distintos sistemas de ventana, frameworks de UI y arquitecturas de producto.
¿Por qué importa esta integración?
En escenarios industriales, de ingeniería, digital twin, simulación o visualización avanzada, la experiencia de usuario incluye paneles de control, formularios, dashboards, árboles de escena, menús, herramientas de medición, inspectores de propiedades y flujos de edición, todos conviviendo con el render 3D en tiempo real.
1. Qué es Avalonia
Avalonia es un framework de interfaz de usuario open-source y multiplataforma para .NET. Permite crear aplicaciones usando tecnologías familiares para muchos desarrolladores del ecosistema Microsoft, como C#, XAML y patrones como MVVM. Su objetivo es ofrecer una forma moderna de construir aplicaciones de escritorio y multiplataforma sin quedar limitado exclusivamente al ecosistema Windows.
A diferencia de otros frameworks que envuelven controles nativos de cada sistema operativo, Avalonia utiliza su propio motor de render para dibujar los controles de la interfaz. Esto le permite ofrecer una apariencia consistente entre plataformas y reducir diferencias visuales o comportamientos inesperados entre Windows, macOS, Linux y otros entornos.
| Lenguajes | C# + XAML |
| Patrón UI | MVVM (familiar para equipos WPF, UWP, WinUI) |
| Plataformas | Windows · macOS · Linux · iOS · Android · WebAssembly · Embedded Linux |
| Render propio | Motor independiente de controles nativos del SO (apariencia consistente) |
| Empresas | JetBrains · NASA · Autodesk · Devolutions |
| Licencia | Open-source (MIT) |
Uno de los puntos más interesantes de Avalonia es que resulta familiar para equipos que ya han trabajado con WPF, UWP, WinUI u otros stacks de UI basados en XAML. La separación entre vista, lógica de presentación y modelo de datos encaja bien con arquitecturas MVVM, habituales en aplicaciones profesionales .NET. Esto facilita que equipos con experiencia en herramientas de escritorio empresariales puedan adoptar Avalonia sin abandonar completamente sus conocimientos previos.
Su presencia en el mercado ha crecido especialmente entre equipos .NET que buscan una alternativa moderna para aplicaciones de escritorio multiplataforma. WPF sigue siendo una tecnología muy sólida y ampliamente utilizada en Windows, pero no está diseñada como una solución multiplataforma. WinUI ofrece una experiencia moderna para Windows, pero también está muy centrada en ese ecosistema. MAUI tiene una orientación más marcada hacia aplicaciones móviles y multiplataforma con UI nativa. Avalonia ocupa un espacio especialmente interesante para aplicaciones desktop cross-platform, herramientas técnicas, software industrial, HMIs, editores, configuradores y aplicaciones empresariales que necesitan una interfaz rica y consistente.
Otro aspecto relevante es su enfoque en escenarios industriales y embedded. En este tipo de aplicaciones, la UI no es simplemente una capa estética, sino una parte crítica de la operación. Se necesitan interfaces robustas, paneles de datos, visualización en tiempo real, soporte para pantallas táctiles, despliegues en hardware específico y una experiencia fiable durante largos periodos de uso. Avalonia encaja bien en ese contexto porque combina la flexibilidad de .NET con un modelo de render propio, capacidades de styling, controles avanzados y una arquitectura pensada para aplicaciones complejas.
En resumen, Avalonia se ha consolidado como una de las alternativas más interesantes para construir interfaces modernas en .NET, especialmente cuando el objetivo es salir del entorno exclusivamente Windows sin renunciar a C#, XAML y MVVM.
2. Integración Evergine + Avalonia
La nueva integración permite crear aplicaciones donde Avalonia se encarga de la interfaz de usuario y Evergine proporciona la superficie de render 3D. Desde el punto de vista conceptual, la aplicación Avalonia actúa como contenedor principal: define la ventana, la estructura visual, los paneles, botones, menús, layouts, estilos y lógica de interacción. Dentro de esa interfaz, Evergine se integra como un área específica de render donde se puede visualizar una escena 3D que puede contener modelos, cámaras, luces, materiales, animaciones, simulaciones, datos industriales o cualquier otro contenido gestionado por el motor.

Figura 1 — Arquitectura de integración Evergine + Avalonia
Esta arquitectura resulta especialmente útil porque separa responsabilidades de forma clara. Avalonia gestiona la experiencia de usuario y la capa de aplicación. Evergine gestiona el render 3D, la escena, los recursos gráficos, la cámara, la iluminación y la lógica visual en tiempo real. El resultado es una aplicación donde ambas tecnologías trabajan juntas, pero manteniendo su especialización.
Con Avalonia, Evergine gana una vía adicional para responder a este tipo de necesidades. La integración permite aprovechar el ecosistema .NET completo: servicios, patrones MVVM, data binding, comandos, inyección de dependencias, librerías empresariales, acceso a APIs, comunicación con backend y toda la lógica habitual de una aplicación profesional. Al mismo tiempo, Evergine aporta la capacidad de renderizar contenido 3D avanzado, trabajar con escenas complejas y proporcionar una base gráfica preparada para visualización en tiempo real.
Casos de uso típicos
La combinación de ambas tecnologías abre escenarios muy concretos y de alto valor:
- Configurador de producto: el usuario modifica opciones desde paneles Avalonia y ve el resultado inmediatamente en una escena Evergine.
- Digital twin industrial: la escena 3D representa una instalación industrial y Avalonia muestra datos en tiempo real, alarmas, KPIs o controles de operación.
- Editor de escenas o assets: árbol de entidades a la izquierda, inspector de propiedades a la derecha, vista 3D de Evergine en el centro.
- HMI / Panel de control: interfaz táctil robusta con Avalonia y visualización 3D del proceso o maquinaria controlada.
Especial agradecimientos
Para la integración de Avalonia en Evergine fue clave la colaboración y participación de Javier Suarez, Ingeniero del equipo de Avalonia con el que pudimos trabajar conjuntamente y que garantiza tanto esta primera integración como futuras nuevas actualizaciones y versiones de esta integración.
3. Nueva plantilla en el Launcher de Evergine
Una de las novedades más importantes de esta release no es solo la integración técnica, sino la disponibilidad de una nueva plantilla desde el Evergine Launcher. Esta plantilla permite crear un proyecto base de Avalonia + Evergine de forma directa, sin que el desarrollador tenga que construir toda la infraestructura inicial manualmente.

Esto es especialmente importante desde el punto de vista de producto. Una integración puede ser potente técnicamente, pero si empezar a utilizarla requiere demasiados pasos, configuración manual o conocimiento interno, su adopción se vuelve más difícil. La plantilla reduce esa fricción. Permite que el usuario cree un nuevo proyecto, lo ejecute y disponga rápidamente de una aplicación Avalonia con una superficie de render Evergine preparada para empezar a trabajar.
La plantilla actúa como punto de entrada oficial para nuevos proyectos que quieran combinar ambas tecnologías. Define una estructura inicial recomendada, resuelve la configuración base y ofrece un camino claro para que el desarrollador pueda centrarse en construir la aplicación en lugar de invertir tiempo en preparar el entorno desde cero.
| Velocidad de arranque | Prototipo inicial en menos tiempo, sin configurar el entorno desde cero. |
| Consistencia | Todos los proyectos parten de una estructura alineada con la forma recomendada por Evergine. |
| Reducción de incertidumbre | La plantilla proporciona una base funcional sin que el usuario tenga que interpretar cómo integrar el motor. |
| Apertura a nuevos equipos | Facilita la adopción por parte de equipos que ya trabajan con Evergine pero necesitan una UI más rica. |
4. Ejemplo UIWindowSystemsDemo actualizado
Junto con la nueva plantilla, también se ha actualizado el ejemplo UIWindowSystemsDemo (incluido dentro de los samples de Evergine) para incorporar la integración con Avalonia. Este repositorio es especialmente útil porque muestra distintas formas de integrar Evergine en aplicaciones que utilizan diferentes sistemas de ventana y frameworks de interfaz. El repositorio incluye ejemplos con tecnologías como WPF, WinUI, MAUI, SDL y ahora Avalonia, convirtiéndolo en una referencia práctica para entender cómo Evergine puede convivir con diferentes modelos de aplicación dentro del ecosistema .NET y multiplataforma.

La incorporación de Avalonia al sample cumple una doble función. Por un lado, sirve como demostración técnica de la integración: permite ver cómo se estructura una aplicación real, cómo se inicializa Evergine dentro del entorno Avalonia y cómo se organiza la convivencia entre UI y render 3D. Por otro lado, sirve como material de aprendizaje para desarrolladores que quieran ir más allá de la plantilla inicial y revisar un ejemplo preparado dentro del conjunto oficial de samples.
Este tipo de sample es muy importante porque las integraciones con sistemas UI no suelen entenderse completamente solo leyendo una descripción. Los desarrolladores necesitan ver la estructura de carpetas, el ciclo de vida de la aplicación, la inicialización del control, la conexión con la escena, la gestión del tamaño de la superficie, la interacción con la ventana y la forma en la que el motor se aloja dentro de la UI. Un ejemplo funcional reduce mucho el tiempo necesario para entender el enfoque correcto.
Además, al estar junto a otras integraciones, el sample permite comparar diferentes tecnologías. Un desarrollador que ya haya utilizado Evergine con WPF o WinUI puede revisar el nuevo proyecto Avalonia y entender mejor qué cambia, qué se mantiene y qué posibilidades ofrece este nuevo stack.
¿Por qué los samples son clave?
Las integraciones con sistemas UI no se entienden completamente leyendo solo una descripción. Los desarrolladores necesitan ver un ejemplo funcional para reducir el tiempo de adopción y entender el enfoque correcto. UIWindowSystemsDemo es esa referencia.
5. Conclusiones
La llegada de Avalonia a Evergine representa un paso importante para seguir acercando el render 3D en tiempo real a aplicaciones profesionales construidas con .NET. Avalonia aporta una tecnología UI moderna, open-source y multiplataforma con un modelo de desarrollo familiar para equipos que ya trabajan con C#, XAML y MVVM. Evergine aporta la capa 3D industrial, la escena, el render en tiempo real y las capacidades necesarias para crear visualizadores, configuradores, simuladores y herramientas avanzadas.
La nueva integración permite combinar ambos mundos en una misma aplicación. La nueva plantilla disponible desde el Evergine Launcher reduce la barrera de entrada y ofrece una forma directa de comenzar un proyecto Avalonia + Evergine. Y el ejemplo actualizado UIWindowSystemsDemo proporciona una referencia práctica para entender cómo se organiza esta integración dentro del conjunto de sistemas UI ya soportados por Evergine.
Avalonia se suma así al ecosistema Evergine como una nueva opción para crear interfaces ricas y multiplataforma alrededor de experiencias 3D industriales. Para los equipos .NET que buscan ir más allá de la pantalla completa y construir herramientas, editores o aplicaciones industriales completas, la combinación de Evergine y Avalonia ofrece hoy una base sólida, moderna y preparada para producción.
| Nueva integración | Evergine + Avalonia en una misma aplicación (UI moderna + render 3D) |
| Nueva plantilla | Disponible desde el Evergine Launcher (proyecto funcional desde el primer minuto) |
| Sample actualizado | UIWindowSystemsDemo incluye Avalonia junto a WPF, WinUI, MAUI y SDL. |
| Ecosistema .NET | Servicios, MVVM, data binding, DI, APIs y lógica empresarial integrada con el motor 3D. |
| Multiplataforma | Combinación orientada a Windows, macOS y Linux sin atarse a un único stack de interfaz. |


