ちょっと断言できるほどのことではないので、似たようなケースがあった場合の参考程度に投げておきます。
以前から弾を発射するアクションへは遷移しているのに弾が出ないことが度々あり、困っていました。最近弾を発射するアクションの「1フレーム経過させる」のチェックを外していたのを入れたところ、安定するようになった・・・ような気がします。まだ同じバグを見かけていないだけかもしれないので断定はできませんが、もし弾が出ないことがある方が居たら参考になる・・・かも・・・?
ちょっと断言できるほどのことではないので、似たようなケースがあった場合の参考程度に投げておきます。
以前から弾を発射するアクションへは遷移しているのに弾が出ないことが度々あり、困っていました。最近弾を発射するアクションの「1フレーム経過させる」のチェックを外していたのを入れたところ、安定するようになった・・・ような気がします。まだ同じバグを見かけていないだけかもしれないので断定はできませんが、もし弾が出ないことがある方が居たら参考になる・・・かも・・・?
「1フレーム通過させる」は、状態を持つための標準的な方法です。これをチェックしない場合、その状態内のアクションが実行される前に、条件を有効にしたい場合だけです。したがって、現在の動作は最大限の柔軟性を提供するために意図されたものですが、デフォルトでは最も互換性の高い使い方になっています。
この説明が役に立つことを願っています!
弾を発射させるアクションは1フレーム経過させるにチェック入れないとダメということでしょうか?
anystateから戻したくない場合とか結構使うシチュエーションな気がするので、その辺ちゃんと明文化して欲しいですね。
はい、まさにその通りです。これは、状態が条件を満たす前に実際に実行されるように、動作を予測可能にするためのものです。1フレームとは、状態が実際に条件が満たされる前に実行されることを意味します。
また、その設定の上にカーソルを合わせると、ツールチップが表示されます。
1フレーム経過させないオプションは、
基本的に
で1フレーム経過してしまうことを避けるために実装しています。
他の実行アクションでも一部動作するものもありますが、Bazさんもご指摘の通り1フレームも経過せずに即座に遷移してしまう=基本的には実行アクションは動作しないと考えていただく方が良さそうです。