MvUtl: Destroy Related Oi


ASTER::ACTION::MotionControl::MvtUtil: Destroy a releted object instance

Rev.0.9.15 で実験している機能。指定インスタンスに関連付けしたインスタンスを破壊。キャッシュをクリア。

クリックチームの公式モーション機能を利用しないという前提で機能実装されています。インスタンスが事前確保しているメモリ領域にはモーションを利用しない場合に事実上まったく利用されていない領域があり、これを勝手に再利用します。Yves に聞かないと何に使っているのか分からないのですが、ほぼ間違いなく「使っちゃダメぇ領域」なので、自己責任で使っています。致命的な不具合が出たら別の方法を考えます。


Parameter

個別インスタンスを指定するイベントを事前に作成し、関連付けしたインスタンス情報を持つインスタンスを特定してからオブジェクトを選択します。

ASTER::ACTION::HWND::TEST

Event Detect で取得したインスタンス情報を使って特定し、指定インスタンスに関連付けされたインスタンスを直接破壊するイベント例。


Note

関連付けは 1 インスタンスに 1 つだけ登録することができます。


活用方法

MoveTowards の動作サンプルでは、mvt.Targetmvt.Pursuer の各選択時、選択されたインスタンスの位置に新規作成で別インスタンスを配置し、選択されたインスタンスであることを視覚的に分かりやすくするためのエフェクトを付与しています。

エフェクトなので選択が解除されたタイミングでエフェクトだけ消えて欲しいのですが、エフェクトを別インスタンスで複数作ってしまうと破壊指令を出す際、インスタンスを特定するための検索イベントを作成しこれには少し手間がかかり効率も悪い。

しかし ASTER では関連付けされたインスタンスに直接破壊命令を出すことができ、シンプルで負荷が少ないイベント作成が可能になっています。