calendar

S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
<< November 2019 >>

categories

archives

3D座標を制御する関数

0
    PV3Dでゲームなんかを作っていると、座標やローテーションの指定が多くて大変になってきます。
    そこで、座標X,Y,ZとローテーションX,Y,Zを一発で設定できる関数を作って制御します。

    function setPosition(prmObj, prmX:Number, prmY:Number, prmZ:Number,
    prmRX:Number, prmRY:Number, prmRZ:Number, prmVisible:Boolean = true):void {
    Tweener.removeTweens(prmObj);
    prmObj.x = prmX;
    prmObj.y = prmY
    prmObj.z = prmZ
    prmObj.rotationX = prmRX;
    prmObj.rotationY = prmRY;
    prmObj.rotationZ = prmRZ
    prmObj.visible = prmVisible;
    }

    使用例)obj(Collada)を座標(100,200,300)、ローテーション(10,20,30)に設定する場合
    setPosition(obj, 100, 200, 300, 10, 20, 30);

    ・prmObjは移動の対象となる3Dオブジェクトで、ColladaかDisplayObject3Dを指定します。
    ・Tweenerでdelayを設定されてたりすると、座標移動した後に動き出してしまうのでremoveTweensしてます。
    ・最後のパラメータはオプションですが、座標制御するときにvisibleも一緒に指定する事もよくあるので付けました。

    コメント
    コメントする








       
    この記事のトラックバックURL
    トラックバック