Novedades
Esta es una descripción general de algunas actualizaciones clave en las herramientas para programadores. Si quieres obtener todos los detalles, consulta las notas de la versión.
Presentamos controles de brillo de pantalla con la nueva propiedad Screen.brightness (iOS y Android) y mejoramos la API de ReplayKit (iOS). Para permitirte ajustar tu interfaz de usuario (UI) con mayor facilidad, agregamos soporte para detectar el cuadro delimitador (bounding box) alrededor de los nodos (o el hueco de la cámara) en Android mediante la nueva propiedad Screen.cutouts.
También agregamos una revisión del tamaño del APK con Android App Bundle para que puedas determinar fácilmente el tamaño final de la aplicación para diferentes objetivos.
Actualizamos nuestra solución de Cloth para utilizar el nuevo solucionador NvCloth como parte de nuestra transición de PhysX 3.4 a PhysX 4.x. Esto ofrece una base de código más refinada para tus proyectos de Cloth, así como una simulación de mayor calidad y un mejor rendimiento con varias funciones nuevas, como un mejor modelo de subprocesos (threading).
Este nuevo sistema de renderizado y mezcla de audio está basado en C# Job System de Unity. Esta característica se publicó como función experimental en la versión 2019.1 y ahora está disponible como paquete de vista previa. Puedes utilizarlo con Burst Compiler y es totalmente extensible en C#, lo que permite que los programadores de audio y los desarrolladores de motores de audio creen su propio sistema de audio personalizado.
Es la base del próximo sistema de audio de pila de tecnología basada en datos (Data-Oriented Technology Stack, DOTS), entre otros. Puedes verlo en acción en el proyecto Megacity, presentado en GDC, donde alimenta 100,000 emisores de sonido 3D/espaciales esparcidos de forma única, incluyendo letreros de neón, ventiladores de aire acondicionado y autos, lo que produce un paisaje sonoro complejo y realista.
Esta versión es compatible con Intel VTune Amplifier para el reproductor independiente de Windows (x86, 64-bit) y el editor de Windows, lo que incluye la creación de perfiles de muestreo de código C#.
Con VTune, puedes detectar rápidamente los cuellos de botella de rendimiento. Esta característica ofrece técnicas avanzadas de muestreo y creación de perfiles, las cuales te permiten analizar rápidamente tu código, aislar los problemas y enviar información para optimizar el rendimiento en los procesadores modernos.
En esta versión, actualizamos los editores predeterminados a Visual Studio 2019 y Visual Studio 2019 para Mac. También comenzamos a trasladar las integraciones de editores de código (y, por lo tanto, los IDE) desde el sistema central hacia los paquetes, y expusimos nuestras API de C#. En esta versión, las integraciones de Visual Studio Code y JetBrains Rider están disponibles como paquetes. Visual Studio estará disponible como paquete en una versión futura.
También trabajamos con los equipos de Rider y Visual Studio en este proyecto. Al contribuir a los paquetes de integración para sus IDE respectivos, habilitarán nuevas características y mejoras para Unity.
Eliminamos el antiguo .NET 3.5 Equivalent Scripting Runtime. Cualquier proyecto que utilice .NET 3.5 Equivalent Scripting Runtime se actualizará automáticamente para utilizar .NET 4.x Equivalent Scripting Runtime.
Seguiremos ofreciendo soporte para .NET 3.5 Equivalent Scripting Runtime en la versión 2018 LTS de Unity (con soporte durante dos años después de su publicación). Esto significa que tendrá soporte hasta la primavera de 2021.
El recolector de basura incremental (GC) aparece como característica experimental en algunas plataformas en la versión 2019.1 de Unity, y en todas las plataformas excepto WebGL en la versión 2019.2, y es capaz de dividir su trabajo en varias porciones. Esto significa que, en lugar de una interrupción larga en tu programa, puede hacer varias recolecciones mucho más breves. Aunque esta característica no lo hace más rápido en general, ayuda a que existan menos picos de actividad del GC (lo que se traduce en animaciones más fluidas) porque distribuye la carga de trabajo entre varios frames.
Para obtener más información, lee nuestra publicación en el blog.
Obtén acceso a todas las características mencionadas y mucho más hoy mismo.