通常のHitイベントは、物体同士が触れている間にパルスを送るもののようにみえます。これを、物体同士が触れた瞬間の最初の1フレームだけ単発でパルスを受け取るようにしたいのです。また、物体が離れてHitの判定がなくなった時に“リセット”し、そこから初めて触れたときにまた単発で受け取れるようにしたいです。
どのような処理・機能がありますでしょうか。よろしくおねがいします。ノードの1つである。 DoOnce を利用してみてはどうでしょうか?
BeginOverlap と EndOverlap を使えば、DoOnce の Reset ピンもうまく動くかと思います。
回答ありがとうございます!後出しで申し訳ありませんが、一つ条件を足させていただきたいです。いろいろな形のアセットに応用するため、できればOverlap用のアタリの設定をしないで済む方法があると嬉しいです。よろしくお願いします。
次のようにするのはどうでしょうか?1枚目を組んだ後によく考えたら2枚目の方が楽じゃないかと思ったのですが折角なのでどっちも貼っておきます。
RetriggableDelayで連続で入力が来てもDelayのカウントがリセットされるので一度衝突をやめる必要があるようにしてます。
ただDelayに入れる値が小さすぎるとフレームレートが低下するような状況の時に判定を抜けてしまう場合がありますので注意が必要です
回答ありがとうございます!シンプルな処理にまで詰めていただけてありがたいです。フレームレートの影響に留意しつつ、許容できるところの処理で使わさせていただきます。