A equipe da Crate Entertainment lançou Fangs of Asterkarn, a nova expansão para Grim Dawn que introduz um bioma nevado completo. Este artigo analisa como o motor proprietário, herdado de Titan Quest, gerencia a iluminação escura e as físicas de restos de inimigos. Exploraremos as otimizações em C++, a modelagem de assets no Maya e a texturização no Photoshop que tornam possível essa atmosfera gélida e opressiva.
Implementação técnica do clima invernal e físicas de restos ❄️
Para simular a neve acumulada, a equipe utilizou shaders personalizados no motor proprietário que aplicam um deslocamento de vértices dinâmico sobre os modelos do Maya. A iluminação escura é obtida através de um sistema de luz direcional com atenuação por altura, otimizado em C++ para manter 60 FPS em cenas com partículas de nevasca. As físicas de restos de inimigos, como cadáveres congelados que se fragmentam ao impactar, foram implementadas com um solver de colisões simplificado que prioriza a estabilidade sobre o realismo, reduzindo a carga da CPU. A texturização no Photoshop incluiu camadas de máscaras de geada que são ativadas conforme a temperatura do bioma, um detalhe que reforça a sensação de perigo constante.
Lições técnicas para desenvolvedores independentes 🛠️
Fangs of Asterkarn demonstra que um motor proprietário pode competir com soluções modernas se o pipeline for otimizado. O uso de C++ para gerenciar o pool de objetos de físicas e o carregamento assíncrono de texturas de neve do Photoshop evita quedas de desempenho. Para desenvolvedores, a chave está em limitar o número de partículas climáticas e usar o Maya para criar assets modulares que sejam reutilizados com diferentes materiais. Esta expansão é um estudo de caso sobre como o planejamento técnico, desde a modelagem até a iluminação, define a atmosfera de um jogo de ação.
Como eles otimizaram a geração procedural de neve e gelo nos biomas invernais de Fangs of Asterkarn para evitar problemas de desempenho em Grim Dawn sem sacrificar a densidade visual do ambiente?
(PS: um desenvolvedor de jogos é alguém que passa 1000 horas fazendo um jogo que as pessoas completam em 2)