Plugin para o Unity Editor e para jogos em execução que permite a agentes de IA, como Claude, Cursor e Copilot, controlar o Unity por meio de ferramentas MCP e skills geradas.
mxgmn/WaveFunctionCollapse
Programa em C# que gera bitmaps e tilemaps localmente semelhantes a um exemplo de entrada, usando o algoritmo Wave Function Collapse.
- Estrelas
- 25,410
- Forks
- 1,368
- Issues abertas
- 10
- Último commit
- há 4 dias
O que é?
WaveFunctionCollapse gera novos bitmaps ou tilemaps a partir de uma única imagem de amostra ou de um conjunto de tiles. As saídas contêm apenas padrões de pixels NxN presentes na entrada, então o resultado se parece localmente com o exemplo, mas forma novos layouts globais. O nome vem da ideia de uma superposição de estados possíveis que colapsa em um estado definido, embora o algoritmo use coeficientes de valores reais, e não mecânica quântica de fato.
O algoritmo escolhe repetidamente a região não observada de menor entropia, colapsa essa região para um estado definido de acordo com as frequências dos padrões na entrada e propaga as restrições resultantes pela saída. Se todas as opções de alguma célula forem eliminadas, ocorre uma contradição e a execução falha — algo que, segundo o projeto, raramente acontece na prática. O repositório inclui tanto um modelo sobreposto para amostras baseadas em pixels quanto um modelo simples de tiles para tilesets com regras de adjacência, além de um sistema de simetria para reduzir as listas de adjacência dos tiles.
O projeto é uma aplicação de console baseada em .NET, configurada por meio de samples.xml, e grava a saída em uma pasta chamada output. É amplamente usado para gerar níveis e texturas de forma procedural em jogos e pixel art, e conta com muitas versões em outras linguagens.
Recursos principais
- 01Gera bitmaps de saída que contêm apenas padrões NxN presentes em uma única imagem de entrada.
- 02Oferece um modelo sobreposto para amostras de pixels e um modelo simples de tiles para tilesets.
- 03Usa a seleção de entropia mínima para escolher qual região colapsar em seguida.
- 04Inclui um sistema de simetria de tiles para reduzir o tamanho das listas de adjacência.
- 05É executado como uma aplicação de console .NET configurada por meio de samples.xml.
Casos de uso
- Gerar níveis de jogos ou layouts de masmorras a partir de tilesets feitos à mão.
- Criar mapas em pixel art ou texturas semelhantes a uma imagem de amostra.
- Criar protótipos de geração procedural com restrições definidas por um designer.
- Estudar ou ensinar o algoritmo Wave Function Collapse.
Tópicos
Perguntas frequentes
- O que é WaveFunctionCollapse?
- Programa em C# que gera bitmaps e tilemaps localmente semelhantes a um exemplo de entrada, usando o algoritmo Wave Function Collapse. WaveFunctionCollapse gera novos bitmaps ou tilemaps a partir de uma única imagem de amostra ou de um conjunto de tiles. As saídas contêm apenas padrões de pixels NxN presentes na entrada, então o resultado se parece localmente com o exemplo, mas forma novos layouts globais. O nome vem da ideia de uma superposição de estados possíveis que colapsa em um estado definido, embora o algoritmo use coeficientes de valores reais, e não mecânica quântica de fato.
- WaveFunctionCollapse é gratuito? Qual é a licença?
- WaveFunctionCollapse é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- WaveFunctionCollapse ainda é mantido?
- Manutenção ativa. O último commit de WaveFunctionCollapse foi em 15 de out. de 2026.
- Para que posso usar WaveFunctionCollapse?
- Gerar níveis de jogos ou layouts de masmorras a partir de tilesets feitos à mão. Criar mapas em pixel art ou texturas semelhantes a uma imagem de amostra. Criar protótipos de geração procedural com restrições definidas por um designer. Estudar ou ensinar o algoritmo Wave Function Collapse.
- Onde consigo WaveFunctionCollapse?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/mxgmn/WaveFunctionCollapse
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma ferramenta de CLI em Rust e WASM que ajusta pixel art irregular gerada por IA a uma grade de pixels e uma paleta quantizada consistentes.
Integração oficial do Yarn Spinner com Unity, um sistema de diálogos em formato de roteiro para conduzir conversas em jogos.
Lista selecionada e organizada por temas de conjuntos de dados abertos de alta qualidade em áreas como biologia, clima, agricultura e redes.
Bot gratuito e open source de trading de criptomoedas em Python, com suporte às principais exchanges, backtesting, dry-run e controle pelo Telegram ou por uma interface web.
Um canivete suíço para desenvolvedores no desktop, com cerca de 30 pequenas ferramentas offline para codificar, formatar, converter e testar dados.