a3js API Documentation - v0.0.34
    Preparing search index...

    Interface Motion

    ObjectA3のobjectプロパティに保存されているTHREE.Object3Dの インスタンスには影響を与えないけど、その中に含まれている 要素をコントロールするモーションインターフェース。 キャラクターの様々なジェスチャーを表すようなモーションを コントロールすることなどに使われる。

    このインタフェースにはcontrolMotion()や、setPause()、 setTime()などのメソッドがある。update()はPose型の情報を 返すことで3Dの要素に動きを与えるメソッド。どのメソッドも、 原則そのメソッドが示す処理を実装することになるが、どのような InnerMotionかによって、その処理内容は様々な場合がありうる。 * Three.jsではTHREE.AnimationClipに対応する対象と考えてもらいたい。

    interface Motion {
        finishListener?: () => void;
        name: string;
        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

    モーションの再生が最後まで来た時に呼び出されるイベントリスナー。

    name: string

    このMotionにつける名前。「GAHA不要である可能性」

    playCount: number

    このMotionが何回再生されたかを保存している。

    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