Utilize o Discretizador para deixar os valores de flutuação ou inteiros mais discretos, reduzindo uma ampla faixa de valores a um subconjunto mais gerenciável no custo de uma determinada quantidade de precisão. Isso ajuda na otimização potencial dos dados de entrada do suboperador de controle de forma, mas pode ser usado para outros propósitos.
A discretização é baseada em dois valores: Base e Etapa. Para cada entrada de valor, o valor de Etapa é multiplicado por um número inteiro positivo ou negativo e depois adicionado ao valor de base para trazer o resultado o mais perto possível da entrada; a entrada é, então, arredondada para esse valor. Com a Base "b" e a Etapa "s", os possíveis valores de saída do suboperador são b, b+s, b–s, b+2s, b–2s, b+3s, b–3s, e assim por diante.
Os valores de entrada são arredondados para o valor discreto mais próximo. Se o valor de entrada estiver exatamente entre os valores discretos, ele será arredondado para o próximo valor mais alto. Por exemplo, com Base 0 e Etapa 1, o valor de entrada 1,5 é reproduzido como 2 e o valor de entrada -1,5 torna-se –1.
Você pode encontrar um exemplo de uso do Discretizador no arquivo incluído GridAndShapeControl.max. O fluxo contém mais de 10.000 partículas e incorpora dois operadores de dados, ambos desativados no início.
O primeiro operador de dados não utiliza o discretizador; ative e observe quanto tempo demora para calcular as formas de geometria de todas as partículas. É muito lento, mesmo em um PC rápido.
Em seguida, desative o primeiro operador de Dados e ative o segundo. Utiliza o Discretizador no fluxo de dados e funciona muito mais rápido ao gerar formas de partículas. Isso porque o operador torna o fluxo de dados de entrada discreto com a etapa de 1 grau. No primeiro caso, a forma é calculada individualmente para cada partícula. No segundo caso, o conjunto de valores possíveis é reduzido significativamente porque os valores são ajustados em graus inteiros. Como a otimização discreta está ativada no suboperador de controle de forma no segundo operador de dados, as formas são geradas para 360 partículas no máximo; esse é o maior número possível de diferentes valores de ângulo com a etapa de 1 grau, e então essas formas são compartilhadas entre as partículas. O olho não pode distinguir entre esses dois casos, mas o segundo funciona muito mais rápido.
Portanto, o suboperador do Discretizador é uma ferramenta útil para o suboperador de controle de forma.