コンストラクタ。生成する段階ではObjectA3と独立に 生成できるようにするのが理想。実際に使うにはsetObject()を してから使うことになる。
物理演算が必要な場合にRigidBodyやColliderを PhysicsWorldに登録する必要があるので、このメソッドで 対応する。必要無い場合は何もしなくてOK。
このTransformerの動作に必要な初期化処理を実装する メソッド。引数にコントロール対象のa3.ObjectA3(中に THREE.Object3Dも入ってる)を渡されるので、必要に応じて それをスキャンして情報を得ることは許可されるが、変更を 加えてはならない。特に初期の位置、回転、拡大・縮小率は、 第一引数のtransから得なければならず、objectA3.object (THREE.Object3D)から得てはならない。すでに設定されている 状態で呼び出された場合には、再設定という意味で対応しなければ ならない。
このTransformerがコントロールする3Dオブジェクトが 地面に接地しているかどうかを返す。実際には CharacterTransformerのようなTransfomerだけが意味の ある応答が可能だが、それ以外の場合は 「return this.trans.loc.y <= 0;」で良し。
このTransformerが不必要となった時に、PhysicsWorldに 登録していたRigidBodyやColliderを、登録解除する 処理を行うメソッド。
addForceで加えられた力をリセットする。 物理系のTransformerのみ対応すれば 良い物で、それ以外の場合はメソッドの実装は空で良い。
addTorqueで加えられたトルクをリセットする。 物理系のTransformerのみ対応すれば 良い物で、それ以外の場合はメソッドの実装は空で良い。
角速度を設定する。単位はラジアン/秒。 物理系のTransformerのみ対応すれば 良い物で、それ以外の場合はメソッドの実装は空で良い。
指定の場所に移動せよとの外部からの要求を受け付ける ためのメソッド。実際にそれを反映させる処理はupdate() メソッドに書く。
指定場所
指定の場所に直ちに移動せよとの外部からの要求を受け付ける ためのメソッド。実際にそれを反映させる処理はupdate() メソッドに書く。
指定場所
指定の角度に回転せよとの外部からの要求を受け付ける ためのメソッド。実際にそれを反映させる処理はupdate() メソッドに書く。
指定の回転
指定の角度に直ちに回転せよとの外部からの要求を受け付ける ためのメソッド。実際にそれを反映させる処理はupdate() メソッドに書く。
指定の回転
指定の大きさ(拡大・縮小率)に変形せよとの外部からの要求を 受け付けるためのメソッド。実際にそれを反映させる処理は update()メソッドに書く。
指定の大きさ
指定の大きさ(拡大・縮小率)に直ちに変形せよとの外部からの 要求を受け付けるためのメソッド。実際にそれを反映させる処理は update()メソッドに書く。
指定の大きさ
経過時間に応じて、位置、回転、拡大・縮小率を更新するための メソッド。毎フレーム呼び出される。その時点での位置、回転、 拡大・縮小率は必ずthis.transに反映させなければならない。 外部からの指示がなくても自動的に移動するようなことが実現 される。
最も簡単なTransformerの実装クラス。座標、回転、拡大率の 指定を即座に反映する。その他の機能は無い。ただ、メソッドは 全て実装されているので、ちょっとしたTransformerを作りたい 時は、このクラスを拡張して必要なところだけオーバーライド するのがお勧め。