Использование tweenlite для анимации трехмерных координат - PullRequest
0 голосов
/ 27 февраля 2011

Я пытаюсь переместить спрайт в новые 3D-координаты (x, y, z), используя AS3, и я хотел бы использовать TweenLite, но я не знаю как?

Я не оченьОпытный программист, я только начал изучать трехмерные возможности flash 10, и Tweenlite был очень полезен для моих анимаций.

Я пытался использовать QuaternionsPlugin вот так:

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

Есть свойства x, y, z, но я не могу понять, что мы будем обозначать.Я попробовал пример с классом 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)}});
    }
}

}

Спасибо за любую подсказку / помощьдействительно!

1 Ответ

0 голосов
/ 27 февраля 2011

объект Quanternion из математического класса PaperVision3D . «w» - угол поворота, а кватернион гарантирует наиболее эффективный путь вращения.

Vector3D объекты имеют свойства w. В методе Matrix3D interpolate () используются кватернионы, поэтому вы можете использовать анимацию для методов Matrix3D intropolate () или transformVector () , или вы можете просто измените свойства x, y и z вашего экранного объекта - при условии, что вам не требуется абсолютно эффективный рендеринг.

...