Event Detect :: Collision Detection Wall-A ( left )
仮想壁左座標に到達した時、true
ASTER::CONDITION::ObjectControl
::Collision detection with the Wall-A (Left)
Horizontal Wrap | Flip (Sine wave 含む) 動作で仮想壁 (ヴァーチャルウォール) との接触判定時に起動する即時実行条件。水平移動時、左側壁を対象とした判定。
仮想壁との接触判定など Runtime Event 時に有効化される即時実行条件 (コンディション) の総称を「Event Detections」と呼びます。
The Walls
wall-C
↑
wall-A | < ... > | wall-B
↓
wall-D
パラメータ 無し
入力が必要なパラメータはありません。
注意点.1 :: Event Detection
ASTER のオブジェクトコントロール機能ではインスタンスを動かす過程で特定条件や接触判定時にイベントが有効化される「即時実行条件」= Event Detection 機能があります。
例えば Flip | Wrap 動作中、仮想壁に接触した判定が出た時など、接触したオブジェクトインスタンスの各種情報が ASTER のエクスプレッションからアクセス可能になります。
インスタンスの固定値を使えばインスタンスを直接指定したイベントを作成することができ、ASTER で扱わない機能や情報にもアクセスできます。
注意点.2
このコンディションはインスタンスの数に応じたループ実行と同等負荷となります。接触判定の数や更新頻度が多い場合、処理負荷も増えアプリケーション実行パフォーマンスを悪化させる可能性があります。
注意点.3
ヴァーチャルウォールとの接触判定は Runtime Event タイミングで実行されています。
Runtime Event ではまだエクステンション内部は登録されたオブジェクト・インスタンスに対するループ処理実行中、そのループ処理が完了していません。このループ処理の最中に登録インスタンスを削除したり追加したりという処理は通常実行できません。
唯一例外として設計されているのが「 Null Motion 」です。Null には位置を変更したりの動作が全く無く Runtime Event では Reject 処理を行うだけ、かつ全モーションに対してループ先頭で処理されるため Runtime Event で衝突判定が起動した時など、すでに Null は処理がすべて終わっている。このため Null だけは Event Detection 実行タイミングでモーション追加ができるという仕組みになっています。