← Registro de alterações
Diário2026-07-06

Cache de consultas ECS + gizmos de viewport por GPU + fx-math independente

A camada ECS do motor agora armazena em cache as consultas correspondentes a arquétipos, alcançando até 3× mais velocidade de iteração em cenas grandes; os gizmos do viewport (alças de translação/rotação/escala) foram refatorados do modo imediato no lado da CPU para um pipeline instanciado impulsionado por GPU, eliminando a sobrecarga JS por frame; a biblioteca matemática compartilhada foi extraída em um pacote fx-math independente para reutilização entre os sub-repos do motor, editor e CLI; o sistema de materiais suporta recarga a quente para que ajustes PBR apareçam instantaneamente sem re-entrar no modo Play; e o painel de hierarquia de cena agora lida com arrastar e soltar de múltiplas raízes para reorganização em massa de entidades.

Motor: Cache de consultas ECS com indexação de arquétipos

O runtime ECS agora armazena em cache as consultas de componentes correspondentes a arquétipos entre frames. Anteriormente, cada chamada world.query(Position, Velocity) realizava uma varredura completa de arquétipos a cada tick. O motor agora constrói um índice de arquétipos na primeira consulta e o invalida apenas quando arquétipos são adicionados ou removidos. Em cenas com mais de 10k entidades, o throughput de iteração melhora até 3× nos benchmarks.

Editor: Gizmos de viewport refatorados para pipeline por GPU

Os gizmos de translação, rotação e escala no viewport 3D foram reescritos de uma sobreposição canvas em modo imediato no lado da CPU para um pipeline de renderização instanciado impulsionado por GPU. Cada alça de gizmo é agora uma única chamada de desenho instanciada com picking por teste de profundidade via framebuffer de ID de cor. Isso elimina a sobrecarga JavaScript por frame.

Sub-repo: fx-math extraído como pacote independente

As primitivas matemáticas (Vec2, Vec3, Vec4, Mat4, Quat, AABB, Ray, etc.) que estavam duplicadas nos pacotes do núcleo do motor, editor e CLI foram extraídas em um pacote fx-math independente. Todos os três sub-repos agora dependem desta única fonte de verdade, eliminando a divergência entre a matemática do lado do motor e do editor e reduzindo o tamanho total do bundle em ~40 KB.

Motor: Recarga a quente do sistema de materiais

Editar parâmetros de material PBR (albedo, rugosidade, metálico, mapa de normais, etc.) no Inspector agora surte efeito imediatamente no viewport sem precisar parar e reiniciar o modo Play. O motor monitora os handles de arquivo de ativos de material e aciona um re-upload de recursos GPU na mudança.

Editor: Arrastar e soltar multi-raiz na hierarquia de cena

O painel de hierarquia de cena agora suporta selecionar e arrastar múltiplas entidades de nível raiz de uma vez. Você pode usar Ctrl+clique ou Shift+clique para multi-selecionar, e então arrastar toda a seleção para re-parentar sob um novo nó ou reordenar dentro da hierarquia.

← Todas as atualizações diárias