Debounce

Нода Debounce позволяет настроить систему так, чтобы она реагировала только на «настоящие» изменения и игнорировала шум. Иногда в логике поведения бывают моменты, когда что-то быстро переключается туда-сюда: то работает, то не работает — очень часто и быстро. Такие «мигания» могут мешать вашей системе.

Нода Debounce помогает это исправить!

Она работает так: если её дочерний узел (то, что под ней) резко меняет свое состояние (например, успех — провал — успех и обратно), Debounce не торопится передавать это изменение дальше. Она ждёт немного времени, чтобы убедиться — новое состояние стабильное, а не просто вспышка.

Debounce

Blocking Behavior

Wait until Stabilizes:

Нода будет возвращать Running до тех пор, пока состояние не стабилизируется, т.е. все дерево будет на этот период времени блокировано

Return immediately:

Нода сразу же вернет текущее состояние, если оно пока не стабилизировалось - Failure, иначе - Success

Activation Timeout, ms:

Сколько миллисекунд подряд дочерняя нода должна возвращать Success, чтобы этот успех считался настоящим.

Deactivation Timeout, ms:

Сколько миллисекунд подряд дочерняя нода должна возвращать Failure, чтобы этот провал считался настоящим.

Пример: Если дверь быстро открывается и закрывается, но нас интересует только когда она открыта «по-настоящему», длительное время, Debounce позволит не реагировать на случайные хлопки дверью, пока она стабильно не будет открыта в течение X миллисекунд.