Se dio a conocer el plan de desarrollo de funciones para la versión de Qt 6

qt-logo.png

Lars Knoll, creador del motor KHTML, gerente del proyecto Qt Project y director técnico de Qt Company, habló sobre los planes para crear la próxima rama significativa del marco Qt. Después de que se complete la formación de la funcionalidad de la rama Qt 5.14, el desarrollo se centrará en la preparación de la versión Qt 6, que se espera para finales de 2020.

Qt 6 evolucionará con el objetivo de garantizar la compatibilidad con Qt 5, pero no se descarta que puedan surgir problemas individuales, ya que los cambios arquitectónicos y la limpieza planificados no serán posibles sin perder un cierto nivel de compatibilidad. Para facilitar la transición, se planea incluir algunas características de Qt 6 en forma abreviada en las versiones Qt 5.14 y Qt 5.15 LTS. También se preparará un kit de herramientas para facilitar la migración a Qt 6.

Entre los objetivos principales para la próxima sucursal importante está alinear la funcionalidad con los requisitos de 2020, limpiar la base del código y simplificar el mantenimiento del proyecto.

Estos son los cambios esperados

Dentro de los principales cambios que se tienen previstos para Qt 6 se encuentra la capacidad para compilar QML en una representación en C ++ y código máquina.

Así como la transferencia de soporte completo para JavaScript a la categoría de opciones (el uso de un motor de JavaScript con todas las funciones requiere grandes recursos, lo que impide el uso de QML en equipos como los microcontroladores).

Se planea agregar una nueva capa abstracta, Rendering Hardware Interface (RHI), para garantizar el uso sin problemas de varias API gráficas, incluidas OpenGL, Vulkan, Metal y Direct 3D (anteriormente Qt estaba vinculado solo a OpenGL).

Toda la infraestructura de renderizado existente, incluidos QPainter, Qt Quick Scenegraph y Qt3D, se convertirán a RHI. También se planea agregar el módulo Qt Shader Tools para admitir varios lenguajes de desarrollo de sombreadores y proporcionar una compilación cruzada de sombreadores tanto en la etapa de ensamblaje como durante la ejecución del programa.

Unificación de herramientas para crear una interfaz de usuario

Para evitar la duplicación de la funcionalidad y dejar de suministrar dos productos separados, se espera que la funcionalidad de Qt 3D Studio se integre en Qt Design Studio, muchos de los cuales los subsistemas y el marco de conexión de complementos se construyen en una sola base de código con Qt Creator.

Qt Design Studio también planea proporcionar una integración de calidad con paquetes de creación de contenido como Photoshop, Sketch, Illustrator, Maya y 3D Max. Los principales idiomas admitidos en un kit de herramientas de desarrollo unificado son C ++, QML y Python.

Se espera preparar una API unificada para crear interfaces de usuario que combinen elementos de gráficos 2D y 3D. La nueva API permitirá que QML se use para definir elementos de interfaz 3D sin usar el formato UIP.

En la nueva interfaz para integrar contenido 3D con Qt Quick, planean resolver problemas como la sobrecarga al integrar QML con contenido de Qt 3D o 3D Studio, y la incapacidad de sincronizar animaciones y transformaciones a nivel de cuadros individuales entre 2D y 3D.

El renderizado conjunto 2D y 3D se implementará utilizando el nuevo motor de renderizado. Se espera una implementación preliminar del nuevo Qt Quick con soporte 3D en Qt 5.14.

Agregar herramientas para procesar recursos relacionados con gráficos en la etapa de compilación, por ejemplo, para convertir imágenes PNG en texturas comprimidas o para convertir sombreadores y mallas en formatos binarios optimizados para equipos específicos.

La unificación también implica la posibilidad de acceder a Qt Creator para interactuar con las herramientas de diseño y proporcionar a los diseñadores de interfaces oportunidades de herramientas para desarrolladores.

De los demás cambios que se destacan son:

  • Denegación de versiones en QML y una unificación de estructuras de datos que se duplican en QObject y QML (reducirá el consumo de memoria y acelerará el inicio).
  • Evitar la generación de estructuras de datos en tiempo de ejecución a favor de la generación en tiempo de compilación.
  • Ocultar componentes internos mediante el uso de métodos y propiedades privados.
  • Integración mejorada con herramientas de desarrollo para refactorizar y diagnosticar errores durante la compilación.

Fuente: https://blog.qt.io/


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: AB Internet Networks 2008 SL
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Javier dijo

    QT tendría que usar su peso para forzar de una maldita vez un solo sistema de sonido para los escritorios Linux que usen QT. Como hace Google en Android, que todas las aplis tienen que usar la infrastructura de audio de Android.
    Y ojalá esta versión traiga funciones atractivas y cada vez más facilidad de desarrollo e interoperatibilidad. Necesitamos que QT desbanque de una vez a GTK y todos los proyectos importantes se pasen a QT. GTK no solo es atrasada y antigua (si se pusiera a la altura de QT no tendría ningún problema en que fuese QT la que desapareciera) sino que la existencia de ambas plataformas es una de las causas de la confusión, la fragmentación y la duplicación de esfuerzos y recursos de desarrollo en el ecosistema GNU/Linux.