Como alcançar a paridade de funcionalidade da Unreal Engine no macOS com o Windows - Relatório de progresso
Hoje, temos o prazer em compartilhar uma atualização completa sobre o estado da Unreal Engine nas plataformas Apple. Nosso objetivo é alcançar a paridade de funcionalidade com o Windows e oferecer uma experiência consistente para os usuários em todas as plataformas.
Com a introdução da Fab, agora há muito mais conteúdo disponível para macOS, pronto para ser baixado e usado em seus projetos
Aumentamos os requisitos mínimos do sistema para os alvos de tempo de execução e a Unreal Editor no macOS para a versão 13.x. Isso prepara o terreno para uma melhor integração com o Metal Shader Converter (MSC) e atende aos requisitos do XCode para habilitar o suporte ao Vision Pro.
Nosso refinamento contínuo da Metal Render Hardware Interface (RHI) resultou no suporte ao Shader Model 6 (SM6), que leva o Nanite a dispositivos equipados com o chip M2 e superiores, sem a necessidade de recompilar a Unreal Editor ou alterar definições, basta clicar num botão.
O SM6 requer o macOS 15.x+.
Introduzimos o suporte Experimental para o iOS Simulator, fornecendo uma ferramenta valiosa para testes e desenvolvimento no iOS dentro da Unreal Engine.
A UnrealBuildAccelerator (UBA) é a ferramenta da Epic que permite a compilação distribuída. Os agentes UBA são compatíveis com hardware baseado em Intel e Apple Silicon.
Desde a Unreal Engine 5.4, movemos o menu da Unreal Engine da barra de menus do sistema para dentro da própria janela da UE. Essa mudança de design não apenas unifica a experiência do usuário em todas as plataformas, mas também desbloqueia uma suíte de funcionalidades anteriormente específicas da plataforma, aprimorando a usabilidade e a funcionalidade geral do Unreal Editor.
Resolvemos um dos problemas mais prevalentes e frustrantes enfrentados pelos nossos usuários: a falha "NavigateToSource". Incrivelmente, 25% dos relatórios de falhas no macOS eram causados por esse bug, e ele finalmente foi erradicado.
Também aprimoramos nosso CrashReporting, o que nos ajudou a rastrear alguns dos problemas mais difíceis de reproduzir, e seguimos trabalhando para melhorar a estabilidade.
A jornada rumo à paridade de funcionalidade continua e, a cada atualização, estamos reduzindo a diferença entre as plataformas Apple e Windows. Ainda temos muito trabalho pela frente, por isso você verá vários itens com a designação Experimental, mas estamos fazendo em progresso constante!
As funcionalidades experimentais introduzidas são uma prova do nosso compromisso em expandir os limites do que é possível dentro da Unreal Engine nesses dispositivos. À medida que continuamos a refinar e expandir nosso suporte para as plataformas Apple, convidamos os desenvolvedores a explorar esses novos recursos, fornecer feedback e se juntar a nós para moldar o futuro.
Enquanto buscamos alcançar a paridade de funcionalidade com a Unreal Engine no Windows, fizemos melhorias substanciais na Metal Render Hardware Interface (RHI) nas plataformas Apple. Anteriormente, a Unreal Engine utilizava a biblioteca Metal-cpp como um agrupador C++ para a API Metal da Apple. Embora tenha cumprido bem seu papel na época, ela já se tornou desatualizado e trouxe uma quantidade considerável de dívida tecnológica. A partir da Unreal Engine 5.4, adotamos a biblioteca oficial Metal-cpp. Essa mudança nos oferece uma oportunidade de melhorar o desempenho, aumentar a estabilidade e introduzir novas funcionalidades, além de resolver problemas pendentes com mais eficiência.
Para desmistificar o cenário de compatibilidade de dispositivos para traçado de raio por software (Lumen), traçado de raio por hardware (Lumen e Path Tracer) e Nanite, compilamos uma tabela informativa que fornece orientações claras sobre qual dispositivo Apple é compatível com quais funcionalidades.
Embora a comunidade tenha feito progressos notáveis na adaptação do Nanite para o Apple Silicon M1, nosso objetivo é garantir que a integração atenda aos padrões de desempenho e qualidade que os usuários da Unreal Engine esperam. Mesmo com algumas das soluções alternativas propostas, não acreditamos que o hardware M1 consiga atingir o nível de qualidade esperado e, portanto, não terá suporte.
Com a atualização da UE 5.5, a ativação do Nanite em Macs não exige mais uma configuração complexa ou compilações especializadas. Basta ativar o renderizador SM6 nas configurações do seu projeto e configurar suas malhas para o Nanite, e você estará pronto para aproveitar toda a qualidade do Nanite. Lembre-se de que o SM6 requer o macOS 15.x+.
Nossa jornada para otimizar o desempenho de renderização também nos levou a explorar o suporte inicial para o Metal Shader Converter. Ao converter diretamente do DirectX HLSL Intermediate Language (DXIL) para a representação intermediária (IR) do Metal Shader, buscamos minimizar o número de transformações. Esperamos que isso leve a melhorias de desempenho à medida que refinamos nossa integração com essa ferramenta, mas ela ainda é considerada experimental, e continuamos coletando dados.
A Unreal Engine 5.4 representou um marco importante com a introdução do suporte ao iOS Simulator como uma funcionalidade Experimental. No entanto, essa versão não vem com binários pré-construídos, então, quem quiser testar essa funcionalidade precisará compilar a Unreal Editor a partir do código-fonte.
Embora o conjunto de funcionalidades do simulador seja comparável ao de um chip Apple A8, ele ainda melhora a produtividade ao permitir desenvolvimento, prototipagem e testes numa ampla variedade de dispositivos, incluindo os mais recentes MacBooks M1.
Para ter uma visão mais detalhada sobre como usar o simulador, além de instruções de como construí-lo, confira nossa publicação de acompanhamento do EDC.
O Xcode usa manifestos de privacidade para resumir que tipo de dados seu app coleta sobre seus usuários e por que esses dados são coletados. Isso inclui dados coletados pelo seu próprio código, assim como pelos SDKs de terceiros que você está utilizando. Quando você distribui seu app, o Xcode combina os manifestos de privacidade dos seus SDKs e do seu app num único relatório de privacidade, facilitando o fornecimento de informações transparentes aos usuários sobre as práticas de privacidade do seu app.
A UE fornece manifestos de privacidade padrão nos seguintes locais:
macOS: Engine/Build/Mac/Resources/UEMetadata/PrivacyInfo.xcprivacy
iOS, tvOS e iPadOS: Engine/Build/iOS/Resources/UEMetadata/PrivacyInfo.xcprivacy
Projetos que utilizam funções adicionais de privacidade precisam fornecer um arquivo adicional PrivacyInfo.xcprivacy no local especificado pelas configurações de projeto UE. Por padrão, esses locais são:
macOS: /Game/Build/Mac/Resources/PrivacyInfo.xcprivacy
iOS, tvOS e iPadOS: /Game/Build/IOS/Resources/PrivacyInfo.xcprivacy
Para mais informações, consulte a documentação da Apple sobre Manifestos de privacidade.
Desde a Unreal Engine 5.4, lançamos um suporte experimental para o Apple Vision Pro, conforme mencionado em nossa publicação no fórum. Embora inicialmente tivéssemos planejado apenas oferecer suporte ao estilo de imersão Full, o visionOS 2.0 disponibilizou suporte para o estilo de imersão Mixed com renderização Metal, e adicionamos suporte experimental para ele na UE 5.5.
Para começar a usar o Apple Vision Pro, confira nosso guia de início rápido.
Estamos ansiosos para ver o que a comunidade irá criar!
Desempenho antisserrilhado: o modo antisserrilhado padrão, Temporal Super Resolution (TSR), está enfrentando limitações de software e hardware no Apple Silicon, o que eleva seu custo de tempo de execução em relação a outras plataformas. Estamos analisando a situação e esperamos aprimorar o tempo de execução em lançamentos futuros. Enquanto isso, recomendamos que você migre para outro modo antisserrilhado pesquisando o termo “Antisserrilhado” nas configurações de seu projeto e selecionando um método alternativo.
Isso é tudo por enquanto! Esperamos que essa atualização tenha sido útil. E lembre-se, adoraríamos ouvir seu feedback nos fóruns.
Como instalar a Unreal Engine
Baixar o inicializador
Antes de instalar e executar o Unreal Editor, você precisará baixar e instalar o Inicializador da Epic Games.
Instale o Inicializador da Epic Games
Depois de baixá-lo e instalá-lo, abra o inicializador e inicie a sessão ou crie uma conta da Epic Games.
Obtenha suporte ou reinicie o download do Inicializador da Epic Games na Etapa 1.
Instalar a Unreal Engine
Depois de iniciar a sessão, vá até a aba "Unreal Engine" e clique no botão "Instalar" para baixar a versão mais recente.