Autores: Kavita Chodavarapu @CKnew234 e Chris Gagnon
Em março, compartilhamos nossos planos para melhorar significativamente dois aspectos que afetam diretamente a forma como você cria no UEFN: estabilidade e tempo de iteração.
Em relação à estabilidade, isso significou expandir as verificações de ilhas feitos pelo público desenvolvedor, melhorar a cobertura de regressão e dimensionar os defeitos de alto risco no início do ciclo de lançamento.
Em relação ao tempo de iteração, nos comprometemos com uma redução significativa no tempo necessário para que suas alterações entrem em uma sessão ao vivo.
Também nos comprometemos a compartilhar atualizações contínuas, incluindo onde as coisas estão melhorando e onde ainda temos trabalho a fazer.
Confira as últimas novidades.
Onde melhoramos
Tempo de iteração
Em nossa postagem anterior, nos comprometemos a reduzir o tempo de iteração, e temos feito um progresso real, diminuindo o tempo necessário para enviar alterações em uma média de 40% até agora. Esse percentual é ainda maior para projetos maiores, em que tivemos reduções de até 70%.
Essa redução vem de uma série de melhorias que diminuem os tempos de envio:
* Preparação incremental: agora o preparador identifica e processa apenas os ativos que foram alterados desde o último envio, em vez de reprocessar todo o seu projeto.
* CDD do Zen: uma nova infraestrutura de cache de dados derivados que reduz o tempo gasto na recuperação e validação de ativos preparados, encurtando o loop de reprodução no cliente.
* Melhorias adicionais no pipeline de preparação e upload/download: velocidades de transferência de arquivos mais rápidas, tempos de espera na fila reduzidos, validação de ativos aprimorada e melhorias na compilação de Verse.
- E muito mais: melhoria no tempo de carregamento do lado do servidor e do cliente, paralelização de etapas preparatórias e validação, além de muitas outras melhorias na iteração como um todo.
Também fizemos melhorias significativas no Live Edit:
- As funcionalidades do Live Edit estão disponíveis enquanto o jogo está em execução.
- Você pode pausar o jogo, ejetar do pawn e investigar o estado do jogo para fins de depuração.
- Suporte expandido para Sequências de Nível e barramentos de som.
- Nova interface para revisar a lista de edição das transações que estão ocorrendo ao vivo ou que exigem envio, melhorias de experiência do usuário na iteração e muitas correções de bugs para as funcionalidades existentes do Live Edit.
Nosso trabalho aqui não terminou. A expansão do Live Edit continuará sendo um foco para melhorar a experiência de iteração, a compilação de Shaders distribuídos ainda está em andamento e temos várias outras melhorias planejadas para este ano, que continuarão a reduzir o tempo de iteração.
Estabilidade
Desde a versão 39.50, reduzimos significativamente a taxa de regressões de alta gravidade que chegam ao público desenvolvedor. Expandimos as verificações de ilhas feitas por ele, reforçamos nosso processo de dimensionamento de regressão e melhoramos a análise da causa-raiz. O resultado: melhorias significativas nas versões 40.00 e 41.00, mensuráveis em duas métricas principais: Taxa de Escape de Defeitos (DER) e Escapes de Defeitos Graves.
Isso significa que estamos cada vez mais bem-sucedidos na detecção das regressões mais disruptivas e com impacto nos desenvolvedores antes do lançamento.
Também lançamos atualizações das “Ferramentas de integridade de ativos” e do “Gerador de Perfil Espacial” na versão 41.00 para oferecer mais visibilidade sobre problemas de ativos antes que eles causem falhas ou travamentos. Continuaremos trabalhando para aprimorar ainda mais essas ferramentas em versões futuras.
No que estamos trabalhando
A estabilidade melhorou substancialmente em nossas métricas mais críticas, mas algumas áreas permanecem inconsistentes, particularmente Scene Graph, entrada com jogo em andamento (JIP), interface/UMG personalizado, validação e publicação e pareamento. Muitas dessas regressões envolvem interações entre vários sistemas, originam-se de alterações feitas semanas ou meses antes ou só surgem durante verificações do público desenvolvedor em larga escala no final do ciclo de lançamento.
Nossas áreas de foco atuais:
- Expansão da cobertura de automação para Scene Graph e fluxos de trabalho de JIP
- Aumento das verificações em escala do público desenvolvedor no início dos ciclos de lançamento
- Aumento dos critérios de revisão de lançamento para alterações de alto risco
- Melhoria da visibilidade de regressões conhecidas e correções direcionadas ao futuro
Também começamos a publicar listas de problemas conhecidos antes dos lançamentos, sempre que possível, dando ao público desenvolvedor uma visão antecipada sobre regressões confirmadas e correções planejadas.
Olhando para o futuro
Continuaremos a ser francos sobre onde os desafios permanecem: o público desenvolvedor merece honestidade sobre a complexidade das ferramentas. O que podemos prometer é continuar a melhorar a detecção de regressões de alto impacto, comunicar com mais transparência e compartilhar os dados reais por trás do trabalho.
Agradecemos por continuar a criar com o UEFN e pelo feedback, relatórios de bugs e respostas à pesquisa de estabilidade que ajudam a definir essas prioridades.
