Operador de cache

O operador de cache registra e armazena estados de partículas para a memória. Isso é particularmente útil com grandes ou complexos sistemas de partículas, onde a reprodução, e especialmente reversão, são lentas, devido à grande quantidade de processamento necessário.

Quando a cache em efeito, na primeira vez que você executa ou vai para um quadro, o movimento de partículas até e incluindo o quadro é calculado e gravado no cache. A partir daí, reproduzindo o quadro ou quaisquer quadros anteriores utiliza os dados do cache, em vez de voltar a calcular a ação de partículas. Com o armazenamento em cache, o sistema de partículas precisa ser calculado apenas uma vez para cada quadro, em seguida a reprodução e movimentar entre quadros é significativamente mais rápido.

O cache de todo um fluxo, adicionar um cache para o operador de eventos globais. Para armazenar em cache um fluxo inteiro, adicione um operador de cache para o evento global.

Para determinar como implementar melhor o armazenamento em cache no seu sistema de partículas, ative a exibição de Partículas atualização de trilha andamento da atualização e, em seguida, executar a animação ou ir para um quadro relativamente distante do quadro atual. Observe o diagrama de partículas e consulte por eventos que ações se destacam mais do que uma fração de um segundo, ou eventos com mais atividades que do resto. Quaisquer destes tipos de eventos pode se beneficiar de memória cache.

Nota: Não use mais de um operador de cache por evento, a não ser que você esteja utilizando dois: um conjunto para viewports, e o outro para a renderização. De forma similar, não use global e operadores locais de Cache no mesmo fluxo, a não ser que um é configurado para viewports, e o outro para a renderização.
Dica: Quando usa a reprodução em tempo real, se a execução não é suficientemente rápida, será possível utilizar o operador de cache para acelerar. Para obter melhores resultados, defina a etapa da integração da viewport para o mesmo valor que a velocidade de reprodução em tempo real, e defina o cache de amostragem para a etapa de integração. Por exemplo, se a velocidade de reprodução em tempo real é definida para 1 /4x, então a etapa da integração da viewport deve ser também definido como quadro 1/4 e o parâmetro de cache do operador de amostragem deve ser definido para etapa de integração. Assim, porque a reprodução em tempo real é exibida quatro vezes o número de quadros por segundo, e o operador tem cache da armazenamento quatro vezes o número de quadros por segundo, os dois são sincronizados. Se a velocidade de reprodução em tempo real é definida para 2x ou 4x, defina a etapa de integração Viewport ao quadro.

Procedimentos

Exemplo: Usar o operador de cache:

  1. Iniciar ou redefina o 3ds Maxe em seguida, adicione um sistema de fluxo de partículas.
  2. Abra a exibição de partículas.
  3. Na exibição de Partículas, vá às Opções no menu Rastreie a atualização e ative o andamento da atualização.

    Isso permite que você monitore o cálculo do sistema de partículas, destacando as ações na exibição de partículas como o sistema executa.

  4. Na exibição de Partículas, adicione Manter separado um operador para o evento 01.

    Manter separado um operador é um cálculo intensivo.

  5. Ir para o quadro 100 ao clicar na extremidade direita do controle deslizante de tempo.

    Há uma demora enquanto o sistema calcula todos os quadros de partículas de movimento entre 0 e 100. Isto é necessário porque o fluxo de partículas é um sistema que depende do histórico. Ao mesmo tempo, as ações no sistema de destaque brevemente em exibição de partículas como eles são executados em cada quadro.

  6. Ir para o quadro 50 ao clicar no centro do controle deslizante de tempo.

    Há outra demora enquanto o sistema calcula todos os quadros de partículas de movimento entre 0 e 50.

  7. Na exibição de Partículas, arraste um operador do depósito de cache para o evento 01. Insera-o em qualquer lugar no evento.

    Quando você soltar o botão do mouse, há um atraso enquanto o operador de cache armazena automaticamente as partículas de movimento desde o início da animação para o quadro atual. Enquanto isso, cada ação destaca rápidamente em cada quadro.

  8. Vá ao quadro 20 ou em torno.

    Os únicos operadores de destaque são Cache (muito rápido) e Exibição; não há nenhum atraso para o cálculo. Todos os quadros entre 0 e 50 foram armazenados em cache.

  9. Vá para o quadro 100.

    O atraso de tempo é um resultado do movimento das partículas de cache para quadros de 50 a 100.

  10. Vá para diferentes quadros, e arraste o controle deslizante de tempo.

    Todos os movimentos de partículas agora estão armazenadas em cache, portanto, nenhum atraso ocorre. Mas se você alterar um parâmetro, o valor do operador de cache é automaticamente recalculado e armazena o movimento de partículas.

  11. Vá para o quadro 100 e em seguida, em Exibição de partículas, clique em Manter o intervalo do operador e use o teclado para alterar o valor da zona de enfraquecimento para 8.0.

    Por padrão, o operador de cache atualiza automaticamente o cache quando você altera quaisquer parâmetros que ele armazena. Portanto, quando você altera o valor da zona de enfraquecimento no quadro 100, ele será recalculada e recaches toda a animação.

    A seguir, você vai brevemente explorar como o manual de cache funciona.

  12. Clique em operador de cache e atualize manualmente.

    O operador de cache não atualiza os dados armazenados automaticamente quando você altera um parâmetro.

  13. Clique em Manter operador em separado, altere o valor da Zona enfraquecimento para 9.0e em seguida, arraste o controle deslizante de tempo.

    Não há nenhum atraso, porque a animação está sendo reproduzida dos dados em memória cache. No entanto, os dados em memória cache agora são inválidos porque mudou-se um parâmetro no sistema de partículas.

  14. Clique em operador de cache e na atualização manual de grupo, clique em Atualizar.

    3ds Max fecha a exibição de Partículas, atualiza o cache para o segmento e em seguida, volta a abrir a exibição de partículas. Os dados em memória cache estão agora exatos.

    Outras opções de atualização manual permitem que você atualize o cache para toda a animação ou um intervalo de quadros seja personalizada.

    Como você pode ver, o operador de cache é bastante poderoso. Quando estiver presente e ativo, por padrão, ele substitui um novo cálculo do sistema de partículas, exceto quando você alterar quaisquer parâmetros de ação, sobre o qual atualiza automaticamente os dados em memória cache. usado de forma apropriada, é possível economizar um bom tempo na configuração e teste de sistemas de partículas.

Interface

A interface do usuário aparece no painel de parâmetros, no lado direito da caixa de diálogo Visualização de partículas.

Usado em
Armazena em cache de partículas de movimento ao executar nas viewports, ou no tempo de renderização, ou ambos. Padrão=viewport.
Importante: Selecione a opção viewport/renderizar somente ao usar o mesmo número de partículas em viewports e para a renderização. Em outras palavras, as duas configurações multiplicadoras de quantidade na Implementação de emissão de lançamento do evento global (ou fonte de fluxo de partículas) deve ser idênticas. Caso contrário, podem ocorrer resultados imprevisíveis.
Atualizar
Se você alterar um parâmetro no sistema de partículas, os dados em memória cache podem se tornar inválidos. Esta configuração determina se o fluxo de partículas deve atualizar o cache automaticamente ou permite fazer isso manualmente. Padrão=sempre.
  • Sempre A alteração de qualquer parâmetro sob a competência do operador de cache faz com que automaticamente se atualizem os dados armazenados desde o início do intervalo atual (consulte o seguinte parâmetro) para o quadro atual.
  • Manualmente A atualização ocorre somente quando se clica no botão Atualizar, ou limpa-se o cache e em seguida, move-se para outro quadro.
Intervalo
Define o intervalo de quadros no qual o operador de cache funciona. Padrão=segmento ativo.
  • Concluir o fluxo de partículas armazena toda a animação.
  • Segmento Ativoo fluxo de partículas salva somente quadros no segmento ativo, como definido pela hora inicial e final nas configurações de tempo da caixa de diálogo. Este é o intervalo de quadros mostrado na barra de trilha. Também é possível alterar o segmento ao manter pressionada a tecla Alt + Ctrl e arrastando, a barra de acompanhamento com o mouse — para esta operação. você pode usar a esquerda, o meio ou clique com o botão direito.
  • Personalizado: o fluxo de partículas salva somente quadros no intervalo personalizado, como definido pelo operador de cache nas configurações da hora inicial e final (consulte a seguir).
    Nota: Se você colocar em cache apenas parte da animação, fluxo de partículas calcula o comportamento das partículas nos próximas quadros não colocadas em cache utilizando os dados em memória cache. Por exemplo, se você colocar em cache quadros de 0 a 50 e, em seguida, ir para o quadro 60, o fluxo de partículas irá calcular o quadro 51 com base nos dados em memória cache e os quadros de 52 para 60 com base em cada quadro anterior.
Hora de início/término
Os primeiros e últimos quadros da faixa considerada para armazenamento em cache quando em Faixa=Personalizado (consulte acima). Padrão=0, 30.
Nota: O intervalo de tempo é absoluto; isto é, em termos de toda a animação. Se você utilizar um operador de cache localmente e especificar um intervalo de quadros durante o qual nenhuma das partículas estão presentes no evento de Fluxo de Partículas não utilizam o cache.
Amostragem
Determina a frequência de cache do operador de amostras e salva a animação. Padrão=Cada quadro.
  • Cada quadro o fluxo de partículas armazena dados de animação uma vez por quadro.
  • Etapa de Integração a integração do fluxo de partículas armazena dados de animação em cada etapa de integração, utilizando a configuração como especificado no uso da configuração (consulte acima). Se usar pelo que está definido para Viewport/Renderizar, ele usa o mais baixo dos dois valores de Etapa de Integração. Por exemplo, se a viewport está definida como metade do quadro, e de renderização para 1/8 quadro, a taxa de amostragem seria oito por quadro.
  • Cada quadro Nth o fluxo de partículas armazena dados de animação nos intervalos de quadro especificados pelo valor de N, abaixo.
N
Determina o quadro Intervalo para o armazenamento em cache quando a amostragem (acima) está definida para cada quadro Nth. Padrão = 5.

Por exemplo, com N definido com o valor padrão de 5, o cache armazena os dados de animação para cada cinco quadros.

Resultados de teste de cache
Quando salvar em cache dados de partículas, este armazena em cache os resultados do teste de ações. Padrão=ativado.

Isso é importante se cache é usado como um local de operador e o acontecimento seguinte não tem um cache de operador. Para o próximo evento funciona adequadamente, ele deve receber partículas de evento. As partículas resultam da atividade de um teste de ação. O operador de cache pode gravar o teste de atividade para reproduzi-lo posteriormente.

Se o cache operador é usado como um operador global, não é necessário colocar em cache os resultados do teste. Isto é porque o sistema tem dados em cache para cada acontecimento, e é possível pular para um valor arbitrário de quadro sem a necessidade de testar os resultados.

Salvar cache com o arquivo
Quando ativado, o fluxo de partículas inclui os dados em memória cache com cenas que você salva no disco. Esta opção pode aumentar de maneira significativa o tamanho dos arquivos salvos, mas economiza o tempo de recalculo do movimento das partículas após recarregar o arquivo. Padrão=desativado.

Normalmente, os dados em memória cache são salvos em disco de arquivos que você cria com os comandos Salvar ou Salvar como. Também é possível instruir o 3ds Max para incluir em memória cache dados com outros tipos de arquivos utilizando as duas opções seguintes.

Salvar em cache com manter
Salva os dados de cache no arquivo manter, criado com o menu Editar manter. Padrão=desativado.

Atualização do manual de grupo

Estes controles permitem que você atualize ou limpe o cache manualmente dentro de um intervalo de quadros, ou desmarque todo o cache.

Atualizar
Calcula o movimento de partículas dentro do intervalo atual (definido abaixo) e o armazena em cache, substituindo quaisquer dados em memória cache. Disponível somente quando o intervalo é definido como ativo do segmento ou personalizado.

Durante a atualização, o 3ds Max fecha temporariamente a exibição de partículas e exibe um cache de barra de andamento da atualização, ao mover o controle deslizante de tempo através da faixa em cache. Ao mesmo tempo, por padrão, a animação é reproduzida nas viewports. Para previnir isso e acelerar o cálculo, desative a atualização nas viewports.

Se o cache ficar sem memória durante uma atualização manual, o fluxo de partículas interrompe a operação de atualização e exibe um alerta. Clique em OK para continuar e, em seguida, se possível, aumente o valor limite antes de atualizar o cache novamente.

Limpar
Exclui quaisquer dados em memória cache.

Após Limpar cache buffer, se você for para um quadro diferente ou alterar quaisquer parâmetros de ação, o fluxo de partículas armazena automaticamente o movimento das partículas, mesmo que a atualização esteja definida como Manualmente.

Intervalo
Define o intervalo de quadros no qual o cache operador recalcula os dados ao clicar em Atualizar. Padrão=segmento ativo.
  • Concluir o fluxo de partículas limpa cache para toda a animação. Escolher Concluir torna o botão Atualizar indisponível; esta opção é para desmarcar o cache apenas.

    Para atualizar toda a animação, defina o segmento ou o intervalo personalizado para englobar todas as contas e em seguida, use a opção correspondente e clique em Atualizar.

  • Segmento ativa o fluxo de partículas atualiza o cache apenas para quadros no segmento, como definida pela hora inicial e final configurações na caixa de diálogo Configuração de tempo. Este é o intervalo de quadros mostrado na barra de trilha. Também é possível alterar o segmento ao manter pressionada a tecla Alt + Ctrl e arrastar a barra de acompanhamento — para esta operação é possível usar o botão esquerdo, central ou direito do mouse.
  • Personalizado: o fluxo de partículas atualiza o cache apenas só para quadros no intervalo personalizado, como definido nas configurações pela hora inicial e final (consulte a seguir).
Hora de início/término
Os primeiros e últimos quadros da série que é atualizado quando Intervalo=Personalizado(consulte acima). Padrão=0, 30.
Atualizar viewports

Quando ativado, a animação é reproduzida em viewports durante a atualização manual de cache. Desativar essa opção para desativar a reprodução da animação nas viewports durante o cache manual; isto pode acelerar o processo de cache, especialmente com sistemas de partículas grandes ou complexos. Padrão=ativado.

Memória usada grupo (K)

O operador de cache armazena dados na memória do sistema; você pode especificar um limite superior para a quantidade de memória que utiliza. Se a configuração de limite e a quantidade de dados excede o cache disponível para liberar memória, o sistema do computador pode usar virtual (com base no disco rígido), ao invés da memória, que atrasa o armazenamento em cache. Se o fluxo de partículas preenche o cache, qualquer resto de quadros são calculados durante o processo.

Este grupo também permite que você monitore a quantidade de memória usada para o cache de dados.

Limite
A quantidade máxima de memória do sistema usado para armazenar dados de partículas, em kilobytes. Padrão=100.000 ou 97.6 MB.
Total
A quantidade de memória utilizada atualmente pelos dados em memória cache, em kilobytes. Somente leitura.
Nota: Mesmo os quadros da animação sem partículas provavelmente consomem uma certa quantidade de memória cache. A razão para isso é que o cache também armazena os estados para valores calculados de forma aleatória, como Variação, para garantir que a atividade de partículas é consistente através de uma rede de renderização, e com máquinas que podem não ter acesso regular a todos os quadros.
Quadro atual
A quantidade de memória usada pelos dados armazenados para o quadro atual, em kilobytes. Somente leitura.