Suponha que exista algum valor p
, calculado por quadro, que varie continuamente sobre a superfície de um objeto. O valor de p
determina a densidade de algum padrão na superfície. Por exemplo, em um caso com apenas duas densidades possíveis, se p < 0.3
for alta densidade, caso contrário, é baixo.
Pensei em uma solução simples de alto nível: crie duas texturas, cada uma com densidades diferentes, e com base no valor da p
amostra a partir da apropriada. No entanto, há um problema com a fronteira entre altas e baixas densidades.
Aqui está um exemplo para ilustrar o problema (observe que meu problema NÃO é exclusivo desse exemplo de padrão de pontos. Descrevo os padrões com os quais estou trabalhando mais adiante):
E aqui está o limite entre baixa e alta (exibido na textura de alta densidade, mas isso não é relevante.) Se abaixo da linha, isso implica que a textura de alta densidade deve ser amostrada.
E, finalmente, aqui está a comparação entre o que é desejado e o que realmente aconteceria usando este método:
O problema é que quando um círculo somente de alta densidade cruza a linha, ele será ignorado quando p
indicar a textura de baixa densidade a ser amostrada, resultando em um círculo truncado. Eu não sei como resolver esse problema porque p
varia em cada quadro, por isso não posso simplesmente 'estabelecer' um limite entre as duas densidades. É fácil evitar o problema inverso criando a textura de alta densidade a partir da inferior (por exemplo, se um círculo estiver na textura de baixa densidade, verifique se está na textura de alta densidade).
Estou interessado em saber se alguém tem uma maneira de melhorar minha solução ou se possui outro método completamente. A restrição aqui é que p
é calculada por quadro em tempo real. Outra restrição está relacionada à textura do padrão: o padrão é preto e branco, onde preto é o padrão e branco é o plano de fundo (como os círculos no exemplo). O padrão pode não ser apenas formas idênticas repetidas, mas qualquer disposição de formas pretas arbitrárias sobre um fundo branco. (Talvez padrão seja a escolha errada da palavra.)
Eu não estou familiarizado com a pesquisa nesse campo, então não tinha certeza de quais palavras-chave pesquisar, então eu apreciaria se alguém pudesse me indicar a direção certa.