Informe del progreso hacia la paridad de funciones de Unreal Engine entre macOS y Windows
Estamos encantados de compartir con vosotros un informe exhaustivo sobre el estado actual de Unreal Engine en las plataformas de Apple. Nuestro objetivo es lograr la paridad de funciones con Windows y ofrecer a nuestros usuarios una experiencia consistente en todas las plataformas.
La llegada de Fab ha traído consigo un montón de contenido nuevo para macOS, listo para descargar y usar en proyectos.
Hemos aumentado los requisitos mínimos del sistema para el tiempo de ejecución y Unreal Editor en macOS hasta la versión 13.x. De este modo, pretendemos allanar el terreno de cara a una mejor integración con Metal Shader Converter (MSC) y reunir los requisitos para que XCode admita Vision Pro.
Nuestros esfuerzos constantes por pulir la interfaz de hardware de renderizado (RHI) de Metal ha dado sus frutos con la compatibilidad con Shader Model 6 (SM6), que lleva Nanite a dispositivos con chip M2 y superiores, sin necesidad de recompilar Unreal Editor ni aplicar cambios. Basta un solo clic.
Se necesita SM6 para macOS 15.x+.
Hemos logrado que Experimental sea compatible con el simulador iOS, alzándose como una útil herramienta para probar y desarrollar en iOS desde Unreal Engine.
UnrealBuildAccelerator (UBA) es la herramienta de Epic que permite la compilación distribuida. Los agentes de UBA son compatibles tanto con hardware de Apple Silicon como de Intel.
A partir de Unreal Engine 5.4, hemos cambiado la ubicación del menú de Unreal Engine, que antes estaba en la barra de menú del sistema, a la propia ventana de UE. Con este cambio en el diseño conseguimos no solo unificar la experiencia de usuario en todas las plataformas, sino poner a disposición de todos los usuarios un conjunto de funciones que antes solo eran específicas de cada plataforma, lo que mejora la utilidad y la funcionalidad generales de Unreal Editor.
Hemos corregido uno de los problemas más frecuentes y frustrantes a los que se enfrentaban nuestros usuarios, el bloqueo «NavigateToSource». Más de un 25 % de los informes de bloqueos en macOS que recibíamos se debían a este error y por fin podemos decir que lo hemos solucionado.
Además, hemos mejorado nuestro informe de errores CrashReporting, que nos permite llevar un seguimiento de los problemas más complicados de reproducir, con el objetivo de seguir mejorando la estabilidad.
La paridad de funciones está en camino y, con cada versión nueva, conseguimos estrechar distancias entre Windows y Apple. Aún nos queda mucho trabajo por hacer y por eso veréis que muchos elementos aún aparecen como Experimental, pero ¡aquí no se para!
Las funciones experimentales que introducimos son buena prueba de nuestro compromiso por ir más allá de las posibilidades de Unreal Engine en esos dispositivos. Mientras seguimos mejorando y ampliando nuestra compatibilidad con plataformas de Apple, invitamos a todos los desarrolladores a echar un vistazo a estas nuevas funciones, compartir sus comentarios y acompañarnos a dar forma al futuro.
Nuestra intención de alcanzar la paridad de funciones de Unreal Engine en Windows se ha traducido en una serie de mejoras importantes en la interfaz de hardware de renderizado de Metal (RHI) para plataformas de Apple. Antes, Unreal Engine usaba la biblioteca Metal-cpp como contenedor de C++ para la API de Metal de Apple. Aunque cumplía con el objetivo en aquel momento, hace tiempo que quedó obsoleto y ha provocado una gran deuda tecnológica. Por eso, hemos adoptado la biblioteca oficial de Metal-cpp a partir de Unreal Engine 5.4. Este cambio supone una oportunidad de potenciar el rendimiento, mejorar la estabilidad e introducir nuevas funciones a la vez que abordamos problemas importantes con más eficacia.
Con el objetivo de despejar las dudas en el paradigma de la compatibilidad con el trazado de rayos por software (Lumen), el trazado de rayos por hardware (Lumen y Path Tracer) y Nanite, hemos recopilado en una tabla toda la información disponible para que sirva como una guía clara sobre qué funciones están disponibles en qué dispositivos de Apple.
Aunque es cierto que la comunidad ha dado pasos de gigante hacia la adaptación de Nanite para Apple Silicon M1, nuestro objetivo es garantizar que la integración supere las expectativas mínimas de rendimiento y calidad de nuestros usuarios de Unreal Engine. Por eso, no consideramos que el hardware M1 sea capaz de estar a la altura de la calidad esperada, ni siquiera con las soluciones alternativas propuestas, por lo que no podemos ofrecer compatibilidad con este chip.
Con la llegada de UE 5.5, ya no hace falta una configuración avanzada ni compilaciones especializadas para usar Nanite en Mac. Basta con activar el renderizador SM6 en la configuración del proyecto y configurar las mallas para Nanite, para que puedas sacar el máximo partido a Nanite. Eso sí, ten en cuenta que se necesita macOS 15.x+ para usar SM6.
Nuestro periplo hasta la optimización del rendimiento de renderizado nos ha llevado a explorar la compatibilidad inicial con el conversor de sombras de Metal. Al pasar directamente de DirectX HLSL Intermediate Language (DXIL) a la representación intermedia del sombreador de Metal (IR), buscamos reducir al mínimo la cantidad de transformaciones. Esperamos que traiga consigo mejoras en el rendimiento a medida que vayamos mejorando nuestra integración con esta herramienta, pero aún estamos recopilando datos y está en fase experimental.
Unreal Engine 5.4 ha significado un antes y un después gracias a su compatibilidad con el simulador iOS, aún en fase experimental. Sin embargo, esta versión no incluye binarios predefinidos, por lo que quienes quieran probar la función tendrán que compilar Unreal Editor desde cero.
Aunque las funciones del simulador pueden equipararse a las de un chip de Apple A8, ofrece una mejor productividad al permitir el desarrollo, la creación de prototipos y las pruebas en multitud de dispositivos, incluidos los últimos MacBooks M1.
Si quieres conocer más en detalle cómo usar el simulador y obtener instrucciones sobre cómo compilarlo, consulta nuestro artículo adicional sobre EDC.
XCode utiliza manifiestos de privacidad para explicar qué tipo de datos recopila la aplicación sobre sus usuarios y por qué lo hace. Aquí se incluyen los datos que recopila el propio código y todos los SDK de terceros que se usen. A la hora de distribuir la aplicación, XCode combina los manifiestos de privacidad de los SDK y de la aplicación en un único informe de privacidad, de modo que resulte más sencillo ofrecer a los usuarios una información transparente sobre las prácticas de privacidad de la aplicación.
UE incluye manifiestos de privacidad predeterminados en las siguientes ubicaciones:
macOS: Engine/Build/Mac/Resources/UEMetadata/PrivacyInfo.xcprivacy
iOS, tvOS y iPadOS: Engine/Build/iOS/Resources/UEMetadata/PrivacyInfo.xcprivacy
Los proyectos que empleen funciones de privacidad adicionales tendrán que proporcionar otro archivo PrivacyInfo.xcprivacy en la ubicación indicada en la configuración del proyecto de UE. Por defecto, son estas:
macOS: /Game/Build/Mac/Resources/PrivacyInfo.xcprivacy
iOS, tvOS y iPadOS: /Game/Build/IOS/Resources/PrivacyInfo.xcprivacy
Para obtener más información, consulta la documentación de Apple sobre manifiestos de privacidad.
Desde Unreal Engine 5.4, hemos incluido la compatibilidad experimental con Apple Vision Pro, tal y como anunciamos en el foro. Aunque la primera intención era que fuera compatible con el estilo de inmersión Full, visionOS 2.0 abrió la puerta a admitir el estilo de inmersión Mixed con renderizado de Metal y lo hemos incluido en UE 5.5 en fase experimental.
Para empezar a usar Apple Vision Pro, echa un vistazo a nuestra guía de inicio rápido.
¡Estamos deseando ver qué se os ocurre!
Rendimiento del antialiasing: la superresolución temporal (TSR), el modo antialiasing por defecto, tiene algunas limitaciones de hardware y software en Apple Silicon, lo que hace que su coste de tiempo de ejecución sea peor que en otras plataformas. Estamos trabajando en ello y esperamos mejorar el rendimiento del tiempo de ejecución en las próximas versiones. Entre tanto, si quieres usar otro modo antialiasing, puedes hacerlo buscando «Anti-aliasing» en los ajustes del proyecto y seleccionando un método alternativo.
¡Eso es todo por ahora! Esperamos que os haya resultado útil. Y recordad, nos encantaría saber qué opináis en el foro.
Cómo instalar Unreal Engine
Descargar el iniciador
Antes de instalar y ejecutar Unreal Editor, tendrás que descargar e instalar el iniciador de Epic Games.
Instalación del iniciador de Epic Games
Cuando lo hayas descargado e instalado, abre el iniciador y crea o inicia sesión con tu cuenta de Epic Games.
Solicita asistencia o reinicia la descarga del iniciador de Epic Games del paso 1.
Instalación de Unreal Engine
Cuando hayas iniciado sesión, dirígete a la pestaña «Unreal Engine» y haz clic en el botón «Instalar» para descargar la versión más reciente.