- Em uma tela de 128×128 pixels, cada pincel funciona como um programa independente que gera cores e padrões
- Os pincéis executam diversas ações, como mistura, dispersão, gotejamento, crescimento e glitch, e todos podem ser editados diretamente pelo usuário
- Cada célula da tela é composta como uma unidade de dados, criando uma estrutura em que as cores se acumulam e padrões inesperados se formam
- São oferecidos mais de 50 pincéis padrão, e é possível alterar o código para mudar a forma de dispersão ou a reação das cores
- A imagem final pode ser salva e compartilhada, e outros usuários podem retrabalhá-la com o mesmo pincel e a mesma paleta
Visão geral do MOSS
- MOSS é uma ferramenta de pintura baseada em pixels em que cada pincel funciona como um pequeno programa
- Em vez de apenas pintar com o pincel, o usuário pode definir o comportamento do pincel por código
- O pincel manipula os dados da tela e, como resultado, padrões visuais imprevisíveis são gerados
Características e funcionamento dos pincéis
- Os pincéis funcionam de várias formas, como mistura (blend), dispersão (spread), gotejamento (drip), crescimento (grow) e glitch
- Cada pincel tem seu próprio modo de operação, e o usuário pode editar o código diretamente para mudar seu comportamento
- Por exemplo, é possível ajustar como o pincel espalha a cor ou como reage às cores
Estrutura da tela e expressão visual
- A tela do MOSS é composta por 128×128 pixels, e cada pixel é tratado como uma célula de dados
- À medida que os pincéis manipulam os dados das células, as cores se acumulam e surgem padrões naturais e efeitos acidentais
- Nesse processo, são criados resultados visuais inesperados
Pincéis padrão e personalização pelo usuário
- O MOSS oferece mais de 50 pincéis padrão
- Inclui desde efeitos simples de tinta ou nanquim até formas variadas, como crescimento de vinhas (vine growth), gotejamentos úmidos (wet drips) e xadrez gerativo (generative plaid)
- O usuário pode modificar livremente elementos como forma de dispersão, cor residual e reação das cores dos pincéis
Recursos de salvamento e compartilhamento
- A imagem final pode ser salva e compartilhada com outros usuários
- Quem recebe o compartilhamento pode retrabalhar no mesmo ambiente usando o mesmo pincel e a mesma paleta
- O site apresenta diversos exemplos de trabalhos criados por usuários
1 comentários
Comentários do Hacker News
Obrigado por compartilhar. Eu gosto de Aseprite, Procreate e Pico8, e há muito tempo vinha carregando na cabeça a ideia de pincéis programáveis
Nos intervalos entre projetos recentes, arrumei um tempo para fazer eu mesmo um toy de desenho chamado MOSS. Cada pincel é um pequeno script que reconhece todos os pixels da tela e define a forma de desenhar com ruído, padrão, pressão, velocidade etc.
Por exemplo, dá para espalhar pixels como um spray de verdade, fazer pincéis de carimbo cuja forma muda a cada arrasto, pincéis em que as linhas de perspectiva realmente convergem, ou até uma ferramenta de preenchimento inteligente ("Fill of my Dreams")
Quero compartilhar código de pincéis nos comentários e explorar ideias junto com vocês. Há documentação da API no botão (?) no canto inferior direito, e na parte de baixo existe uma função para copiar prompts que permitem usar a API por meio de agentes
A sensação de desenhar um pássaro com um único traço é realmente impressionante
Compartilho o link do meu projeto caso possa servir de inspiração — Wind by Laura
Pincéis de geração procedural também parecem interessantes — por exemplo, um pincel que cria uma paisagem urbana aleatória enquanto você desenha
Acho que ideias assim poderiam usar a técnica de Wave Function Collapse
Fiquei curioso se você poderia compartilhar alguns códigos de pincéis interessantes que não estão no app
Projeto realmente incrível. Acho que alguém mais criativo do que eu poderia usar isso para algo totalmente diferente
Há um tempo vi um vídeo em que alguém fez um app de desenho simples usando o formato de legendas do YouTube
Se o código do pincel do MOSS consegue ler o estado da tela e desenhar, então fiquei pensando se não seria possível, ao contrário, renderizar um vídeo simples ou jogo (por exemplo, Tic-Tac-Toe) em um pincel enquanto o botão do mouse estiver pressionado
Claro que não é o objetivo original, mas parece que seria um desafio divertido
Impressionante. Dá para adicionar a função de desenhar linhas retas ao pressionar a tecla Shift? Tipo no MSPaint
Esse projeto me fez lembrar de um experimento com formatos de arquivo de imagem ultrapequenos que eu fazia antigamente
Organizei um texto relacionado no Medium
Gostei muito. Especialmente se tivesse recursos como estes
Indo além, seria muito interessante se fosse possível registrar os traços dos pincéis e depois reproduzi-los após editar o código do pincel
Acabei de testar e nada é desenhado. Dá para escolher pincéis e cores, mas a tela não reage de forma alguma
Testei no Chrome do MacOS
Excelente. Minha caneta do Surface Pro funciona bem e até reconhece dados de pressão. E isso dentro do navegador!
Ideia muito legal. Parece uma versão de pintura do Shadertoy — link do Shadertoy
Fiquei curioso se existe algum recurso para compartilhar pincéis dentro do app ou algo como uma galeria de pincéis
Compartilhar trabalhos por tema, como na seção “weekly” da página inicial, é divertido, mas quem não desenha tão bem talvez queira compartilhar só os pincéis
No momento, estou salvando meus pincéis em pequenos arquivos .txt
Aliás, os arquivos png salvos no MOSS têm dados dos pincéis codificados junto, então, ao compartilhar esse arquivo, é possível carregar os mesmos pincéis e a mesma paleta
Essa ideia foi inspirada na forma como o PICO8 codifica dados de jogos
Conceito legal. No iOS, ao deslizar rápido com o pincel Aquarelle, a taxa de polling dos eventos de toque fica perceptível
A linha é suave, mas, por causa da característica de a cor ficar mais escura quanto mais tempo o pincel permanece no lugar, acaba surgindo um leve efeito de banding
Não estou entendendo muito bem como usar. Seria bom ter um tutorial