Qt 5.14 llega con API grafica independiente, API para QML y mucho mas
Después de seis meses de desarrollo, se ha anunciado el lanzamiento del framework multiplataforma Qt 5.14. El lanzamiento de Qt 5.14 marcó el comienzo de la rama Qt 6, que se espera ver cambios arquitectónicos significativos. Qt 6 está programado para finales del próximo año y para facilitar la transición a una nueva version, se decidió incluir implementaciones preliminares de algunas innovaciones en los lanzamientos Qt 5.14 y Qt 5.15 LTS.
El código fuente de los componentes Qt está licenciado bajo LGPLv3 y GPLv2, las herramientas Qt para desarrolladores como Qt Creator y qmake, y algunos módulos tienen licencia bajo GPLv3.
Principales novedades de Qt 5.14
Dentro de los principales cambios que se anuncian en esta nueva versión de Qt 5.14 podremos encontrar que Qt Quick ahora proporciona una API gráfica que se pretende que sea independiente de la API 3D del sistema operativo.
En Qt 5.14, se propone una implementación preliminar de un nuevo motor de renderizado de escenas, utilizando la nueva capa RHI (Rendering Hardware Interface) para garantizar que las aplicaciones Qt Quick funcionen no solo sobre OpenGL, como hasta ahora, sino también usando Vulkan, Metal y Direct 3D 11.
Actualmente, el nuevo motor se ofrece en forma de una opción que permite preparar aplicaciones para la transición a Qt 6, en el que RHI se utilizará para mostrar gráficos de forma predeterminada.
Por otra parte, otra de las novedades que se destacan en Qt 5.14 es el nuevo módulo experimental Qt Quick 3D, que proporciona una API unificada para crear interfaces de usuario Qt Quick que combinan elementos de gráficos 2D y 3D.
Qt Quick 3D está marcado como una vista previa de tecnología en la versión actual y debe incluirse como un módulo completo en Qt 5.15.
Otras innovaciones notables en Qt 5.14 son el soporte de alta resolución y la evaluación de la información del espacio de color para la visualización correcta del color en pantallas calibradas adecuadamente incluyendo la capacidad de establecer factores de escala fraccionales.
Para Android, se ha agregado soporte para compilaciones que cubren varios ABI, lo que permite compilar la aplicación a la vez para varias arquitecturas. También se agregó soporte para el formato de paquetes AAB que permiten la entrega de aplicaciones para todas las arquitecturas compatibles en un solo archivo.
Además se llevó a cabo la optimización del rendimiento del módulo Qt 3D, incluido el trabajo con flujos, objetos framebuffer y se modernizó el sistema de notificación. Como resultado, fue posible reducir la carga en la CPU al renderizar el marco y aumentar la eficiencia de sincronización entre hilos ejecutados.
De los demás cambios que se destacan en el anuncio de esta nueva versión, podremos encontrar lo siguiente:
- Se agregó WheelHandler, un controlador de eventos de rueda de mouse, así como eventos para un panel táctil de rueda emulado.
- Se agregó la capacidad de agregar espacios de color para las imágenes, lo que permite lograr la reproducción del color correcta al mostrar imágenes en monitores calibrados.
- Se agregó el espacio de nombres QColorConstants, que en tiempo de compilación le permite generar instancias de la clase QColor con una paleta predefinida.
- Los componentes Qt Widgets y Qt Quick para crear editores de texto han agregado soporte para leer y escribir en formato Markdown.
- La API QCalendar implementa la capacidad de trabajar con calendarios que no sean gregorianos.
- Se han agregado API al módulo de red Qt para configurar los ajustes de HTTP / 2 y monitorear la conectividad de la red.
- La licencia para los componentes Qt Wayland Compositor, Qt Application Manager y Qt PDF ha cambiado de LGPLv3 a GPLv3, es decir vincular a nuevas versiones de estos componentes ahora requiere abrir programas fuente bajo licencias compatibles con GPLv3 o comprar una licencia comercial (LGPLv3 habilitó la vinculación con código propietario).
Si quieres conocer más al respecto, puedes consultar la publicación de esta nueva versión en el siguiente enlace, ademas que en el tambien podrás encontrar los enlaces de descarga en donde puede solicitar una licencia de prueba gratuita (no incluye algunas funciones).