0

AS3を使用してスプライトを新しい3D座標(x、y、z)にトゥイーンしようとしていますが、TweenLiteを使用してそれを実行したいのですが、方法がわかりません。

私はあまり経験豊富なプログラマーではありません。フラッシュ10の3Dの可能性に取り組み始めたばかりで、Tweenliteはこれまでのところ私のアニメーションに非常に役立ちました。

私は次のようにQuaternionsPluginを使用しようとしています:

TweenLite.to(myMc, 2, {quaternions:{orientation:new Quaternion(x, y, z, w)}});

x、y、zプロパティがありますが、wが何を表すのか理解できませんでした。以下のSpriteクラスで例を試しましたが、コンパイルすると、次のように表示されます。1180:未定義の可能性があるメソッドQuaternionを呼び出します。

package com{
import flash.display.*;
import flash.events.*;  
import com.greensock.TweenLite; 
import com.greensock.plugins.TweenPlugin; 
import com.greensock.plugins.QuaternionsPlugin;  

TweenPlugin.activate([QuaternionsPlugin]); //activation is permanent in the SWF, so this line only needs to be run once.

public class Carousel extends Sprite {
     public function Carousel():void {      

    }

    public function scrollUp():void{
        TweenLite.to(Mc1, 2, {quaternions:{orientation:new Quaternion(246, 244, 0, 400)}});
        TweenLite.to(Mc2, 2, {quaternions:{orientation:new Quaternion(242, 210, 70, 353)}});
    }

    public function scrollDown():void{
        TweenLite.to(Mc1, 2, {quaternions:{orientation:new Quaternion(242, 290, 60, 360)}});
        TweenLite.to(Mc2, 2, {quaternions:{orientation:new Quaternion(246, 244, 0, 400)}});
    }
}

}

本当に、ヒント/ヘルプをありがとう!

4

1 に答える 1

0

Quanternionオブジェクトは、PaperVision3D数学クラスからのものです。「w」は回転角を表し、クォータニオンは回転の最も効率的なパスを保証します。

Vector3Dオブジェクトにはw個のプロパティがあります。Matrix3Dのinterpolate()メソッドはクォータニオンを使用するため、Matrix3Dのintropolate()またはtransformVector()メソッドを使用してトゥイーンするか、表示オブジェクトのx、y、zプロパティを単純にトゥイーンすることができます。効率的なレンダリング。

于 2011-02-27T03:10:52.390 に答える