Devlog #15 · O mundo começa a aparecer na tela
O client de Aelara saiu da fase de estrutura vazia e chegou no primeiro marco visual: entidades aparecem no viewport.
A base começou com o projeto Unreal Engine 5.4 organizado, CVars de debug, profiling e estrutura de módulos. Depois veio o Mass Entity: a fundação para representar jogadores, mobs e objetos do mundo de forma eficiente. Uma engine AAA foi escolhida porque Aelara é ação — nenhuma outra plataforma entrega esse nível de fidelidade com as ferramentas necessárias para escala.
Actor Pool e a rede do client
O Actor Pool evita criar e destruir Actors o tempo todo. O client reutiliza Actors preparados — essencial para streaming de entidades numa área cheia. Depois veio a camada de rede: socket UDP com thread de recebimento, fila segura para o game thread, validação de datagrama, handshake, keepalive e reconnect com backoff.
O client passou a entender MSG_SPAWN_BASELINE, MSG_DELTA e MSG_DESPAWN: sabe quando uma entidade entra na visão, quando muda de estado e quando deve desaparecer.
O primeiro sinal de vida
Servidor manda entidade. Client interpreta. Cubo aparece no viewport.
Ainda não é o visual final. Mas é o pipeline visual funcionando de ponta a ponta pela primeira vez.
Bench / validação
— pool_acquire_release_100: ≤ 0.1 ms
— entity_decode_spawn_baseline_100: ≤ 0.1 ms
— net_frame_validate_decode_100: ≤ 0.1 ms
— net_drain_queue_1000: ≤ 0.5 ms
— mock_spawn: N entidades → N cubos visíveis no viewport
Próximo: o client começa a interagir — a primeira camada de combate na tela.