Os sistemas de dispersão procedural pura podem gerar resultados uniformes e repetitivos. Para cenários como um campo de grama ou um leito de rochas, é necessário um controle artístico mais direto. Uma técnica eficaz combina o poder dos Geometry Nodes com a precisão da pintura manual de atributos. Isso permite definir zonas de maior densidade ou tamanho de forma orgânica, integrando o melhor de ambos os enfoques: a automação e a direção artística.
Implementação técnica: atributos pintados e nós 🛠️
O processo se inicia na malha base, criando dois atributos personalizados: densidade e escala. Usando o modo Weight Paint, são pintados valores sobre a superfície, onde o branco representa o valor máximo e o preto o mínimo. Nos Geometry Nodes, esses atributos são capturados com o nó Capture Attribute ou Sample Texture. O atributo escala é conectado diretamente a um nó Scale Instances. Para a densidade, o valor pintado é usado como limiar em um nó Compare, filtrando os pontos gerados por Distribute Points on Faces antes de instanciar.
Quando a grama pede um retoque de luzes e sombras 🌱
É o momento em que você percebe que seu gramado procedural tem calvície e zonas de crescimento descontrolado, como um jardim abandonado por alguém que só sabia usar a tecla aleatorizar. Agora, em vez de discutir com ruídos e parâmetros, você pega o pincel de pesos como um divino paisagista, dando toques de verde aqui e ali. A ironia está em que, para que algo pareça natural, no final é preciso pintá-lo à mão, quase como se os algoritmos precisassem de um pouco de ajuda artesanal para não se comportarem como robôs.