iClone 8 ganha tutorial avançado de Range Conditions com Check Distance e Check Zone para simulações mais “inteligentes”

A Reallusion publicou um novo tutorial avançado do iClone 8 mostrando, na prática, como montar Range Conditions no Motion Director para criar personagens que reagem por proximidade e por “estado do ambiente” — com gatilhos calibrados em centímetros e lógica em camadas usando os nodes Check Distance e Check Zone.

Na série “Advanced MP Series”, o foco deste episódio é simples de entender e difícil de acertar no detalhe: fazer um personagem tomar decisões com base na distância entre alvos (ex.: operar uma máquina quando um produto chega perto) e também confirmar quando o trabalho realmente acabou (ex.: só entrar em idle quando não houver mais objetos em uma área definida).

Dois nodes para detecção de alcance: distância exata vs. zona de gatilho

O vídeo separa o problema em dois métodos. O Check Distance mede a distância exata entre dois alvos (Target A e Target B) e avalia uma condição do tipo “menor que” ou “maior que” um limiar definido. Já o Check Zone não mede centímetros: ele verifica se uma entidade entrou ou saiu de uma trigger zone (uma área de detecção criada na cena).

Painel de atributos mostrando o node Check Distance com alvos A e B e limite em cm

Configuração do Check Distance: alvo A/B e o limiar de distância que dispara a ação do operador.

Exemplo de fábrica: operador “liga” e “desliga” conforme o produto se aproxima

A demonstração usa um set de produção: em Content Manager, o caminho é Project > MP Set, carregando o pack “production floor planning set”. Dentro da simulação, um “handler” coloca produtos na esteira, enquanto o Machine Operator 1 entra em ação quando um item chega perto da máquina.

No graph do operador, o fluxo começa com um goto node (move o personagem para um ponto-alvo) e em seguida usa o Check Distance. No exemplo, Target A é “processing machine 1” e Target B é a “conveyor belt” — que contém múltiplos placement points (pontos onde os produtos podem estar), permitindo monitorar a proximidade de qualquer produto na esteira.

O limiar inicial citado no tutorial é 230 cm: se a distância entre a máquina e qualquer produto ficar menor que isso, o operador toca a animação de “operate machine”; caso contrário, permanece em idle. O comportamento pode repetir indefinidamente, virando um loop de produção.

Calibração real de gatilho: “calculate current distance” para ajustar o threshold

O tutorial entra em uma parte que costuma quebrar a credibilidade de simulações: quando você altera uma animação, o trigger pode ficar “adiantado” ou “atrasado”. Para demonstrar, a Reallusion encurta a animação de operação: no MD Behavior, o “operate machine motion” é aberto na timeline, quebrado com Ctrl+B e reeditado; depois, os clips são sobrescritos na coleção para atualizar o comportamento do prop.

Com a animação mais curta, o gatilho de 230 cm começa cedo demais, então o vídeo mostra como medir a distância exata usando calculate current distance. A técnica: trocar o Target B do “conveyor belt genérico” para um placement point específico, mover temporariamente esse ponto para onde o operador deveria começar a operar, e então medir.

Janela pop-up de calculate current distance exibindo a distancia atual aproximada entre alvos

Medição precisa: usando “calculate current distance” para definir um novo threshold mais realista.

No exemplo, a janela mostra cerca de 167 cm. A partir disso, o tutorial recomenda ajustar o threshold para ~170 cm (ou próximo do valor medido) e desfazer os ajustes temporários, deixando o set como estava. O resultado é um trigger mais coerente com o timing da animação editada.

Check Zone: como detectar “trabalho concluído” antes de liberar o idle

Depois de operar, surge outro problema: o operador pode entrar em idle cedo demais se ainda houver itens em processo. É aqui que entra o Check Zone, conectado após a animação de operação para verificar se ainda existe qualquer objeto relevante dentro de uma zona de gatilho.

Neste exemplo, a zona é “range machine operator 1”. A entidade verificada é a “conveyor belt” com target parts em any (ou seja, basta um placement point ainda estar dentro da área para o resultado ser verdadeiro). Se for true, o fluxo volta ao estado de trabalho; se for false, o operador finalmente pode ir para idle e iniciar outras tarefas.

Node Check Zone selecionado no graph com zona definida e entidade como conveyor belt

Check Zone em ação: verificando se ainda há objetos dentro da trigger zone para manter o operador trabalhando.

Lógica em camadas: operador só descansa quando a área está vazia e o supervisor sumiu

O vídeo ainda estende o cenário com um supervisor patrulhando, para provar que dá para empilhar condições. A configuração inclui criar um caminho (Create Path) e definir um fluxo de patrulha com Start node + Auto Move em modo auto on path, com duração elevada (o tutorial cita 3.600 segundos) para o supervisor andar continuamente.

Em seguida, é criada uma segunda trigger zone usando a ferramenta de Trigger Zone do iClone 8.7, com ajuste de forma (círculo por raio ou retângulo por X/Y). No exemplo, o tamanho em Y é ampliado para cobrir a área de detecção do supervisor.

O operador então recebe uma segunda verificação: a conexão “false” do primeiro Check Zone (área da esteira vazia) passa a alimentar outro Check Zone, duplicado com Ctrl+D, configurado para testar se o supervisor está dentro da nova zona. Se o supervisor estiver perto (true), o operador permanece em standby; se não estiver (false), aí sim entra em idle.

Duplicacao do Check Zone e configuracao para detectar o supervisor em uma nova trigger zone

Lógica em camadas: segundo Check Zone impede o idle enquanto o supervisor estiver por perto.

Por que isso importa para jogos, pré-visualização e simulação

Na prática, a Reallusion está mostrando um padrão reutilizável para comportamento responsivo: medir proximidade com precisão (Check Distance), confirmar presença/ausência em áreas (Check Zone) e combinar as duas coisas para decisões mais “humanas”. Traduzindo o jargão: é uma forma visual de criar regras do tipo “se A acontecer e B não estiver presente, faça C”, sem depender de código tradicional.

Para ver o setup completo no Motion Director, as telas de configuração e o resultado rodando em tempo real, vale assistir ao tutorial oficial.

Fonte: Reallusion