Em jogos de mineração e sobrevivência no Roblox, escavar túneis em tempo real é uma mecânica central que exige máxima eficiência.
Aprenda a aplicar `Terrain:FillBall`, avaliar densidades de voxel e simular desmoronamentos com alto desempenho em Luau.
1. Por que chamadas ingênuas ao terreno causam lag
Alterações contínuas no terreno sobrecarregam a rede e forçam o recálculo da física.
- Gargalo de replicação de rede.
- Recálculo contínuo de colisões.
- Blocos de terra flutuando no ar.
2. Fundamentos Matemáticos: Voxels 4x4x4 e Ocupação
O Smooth Terrain divide o espaço em células de 4 studs com material e ocupação de 0.0 a 1.0.
- Quantização em células de 4 studs.
- Canais de Material e Densidade.
- Busca em largura (BFS) para ancoragem estrutural.
3. Implementação Completa em Luau
Módulo com controle de cooldown, corte esférico e emissão de detritos leves.
- Subtração via FillBall.
- Detritos sem colisão física pesada.
- Controle de taxa de escavação.
-- Consulte a versão em inglês para o código Luau completo
4. Integridade Estrutural e Desabamentos
Detecção de saliências sem suporte e conversão imediata em peças físicas móveis.
- Rastreamento de suporte até a rocha base.
- Conversão de ilhas flutuantes em Parts.
5. Otimização para Celulares e Rede
Geração de detritos visuais apenas no cliente para preservar 60 FPS constantes.
- Partículas via RemoteEvents.
- CanCollide = false nos detritos.
Frequently Asked Questions
Diferença entre FillBall e WriteVoxels?
FillBall é uma operação CSG nativa rápida; WriteVoxels permite editar arrays 3D diretamente.
Por que as bordas ficam facetadas?
Pela quantização de 4 studs quando se usa densidade puramente binária.
Como criar rocha matriz inquebrável?
Amostrando o material antes de efetuar a escavação.
Como salvar mudanças de terreno?
Armazenando deltas de coordenadas em um buffer comprimido.
Detritos causam lentidão?
Não, se CanCollide e CanQuery forem mantidos em false.