A sobrecarga multijogador do Unreal Engine: uma surpresa de otimização de memória

Um desenvolvedor do Unreal Engine, ao usar um visualizador de layout de memória, descobriu inesperadamente que certas estruturas de dados adicionadas para suporte multijogador no Unreal Engine são redundantes em jogos para um único jogador. Essas estruturas consomem uma quantidade significativa de memória; por exemplo, structs personalizadas usadas para replicar anexos de componentes e movimento de ator ocupam 120 e 216 bytes, respectivamente. Ao comentar essas variáveis não utilizadas e o código relacionado no modo para um único jogador, foi obtida uma economia de memória de aproximadamente 392 bytes por ator. Embora não seja significativo para a maioria dos projetos, essa otimização pode gerar economia considerável (potencialmente até 100 MB) para projetos com um grande número de atores (por exemplo, mais de 100.000).