a3js API Documentation - v1.3.1
    Preparing search index...

    Interface Motion

    ActionObject の内部アニメーションを制御するインターフェースです。

    毎フレーム update() が呼ばれ、Pose 型のボーン情報を返すことでアニメーションを実現します。 Three.js の THREE.AnimationClip に相当します。

    独自のモーションを作る場合はこのインターフェースを実装してください。

    interface Motion {
        finishListener?: () => void;
        playCount: number;
        time: number;
        addOneselfToPhysics(world: PhysicsWorld): void;
        removeOneselfFromPhysics(world: PhysicsWorld): void;
        setFinishListener(listener: () => void | undefined): void;
        setPause(p: boolean): void;
        setTime(time: number): void;
        update(dt: number): Pose;
    }

    Implemented by

    Index

    Properties

    finishListener?: () => void

    モーションの再生が最後まで終わったときに呼び出されるリスナー。

    playCount: number

    このモーションが何回再生されたかを表す値。emoteAction の終了判定に使用されます。

    time: number

    現在の再生位置(スタートから何秒経過したか)。

    Methods

    • 物理演算が必要な場合にRigidBodyやColliderを PhysicsWorldに登録する必要があるので、このメソッドで 対応する。

      Parameters

      Returns void

    • このMotionが不必要となった時に、PhysicsWorldに 登録していたRigidBodyやColliderを、登録解除する 処理を行うメソッド。

      Parameters

      Returns void

    • このモーションの再生が一巡して最後まで来た時に呼び出される イベントリスナーを登録する。

      Parameters

      • listener: () => void | undefined

      Returns void

    • このモーションの動作を一時停止させたり、停止状態を 解除したりするためのメソッド。

      Parameters

      • p: boolean

        trueの時停止、falseの時停止解除する

      Returns void

    • モーションがデータを再生させるような種類の物であれば、 そのデータの再生時間を設定する。

      Parameters

      • time: number

        時間(秒)

      Returns void

    • 経過時間に応じて対象のObjectA3の内部の動きをおこす。 毎フレーム呼び出されることで、アニメーションを作り出す。

      Parameters

      • dt: number

        経過時間(秒)

      Returns Pose