2

フリップメカニズムを使用してサイト内を移動しています(フリップファイルデモ)。問題は、反転するとコンテンツが希望どおりに表示されることですが、反転した(右)部分から左の実線部分(よく見ると表示されます)に多少のオフセットがあります。また、右側の部分が少しぼやけています(これは私の問題の邪魔な部分です)。これはすべてフリップが原因です(rotationYが問題を引き起こしていると思います)。

ボタンをクリックすると、次のようになります。

flip=new Flip(currentPage,nextPage,richting);
content.addChild(flip);
currentPage=nextPage;
nextPage = new MovieClip();
4

2 に答える 2

3

修正があります。次のことを考慮してください。

// store original matrix
var origMatrix:Matrix = box.transform.matrix;
// set initial position
box.rotationY = -180;
// start animation
TweenLite.to(box, 1, {rotationY:0, onComplete:cleanBlur})
// execute after animation complete
function cleanBlur():void {
    box.transform.matrix = origMatrix;
}

他の3Dライブラリを使用すると、より良い結果が得られるかもしれません。

編集:申し訳ありませんが、「ボックス」オブジェクト、私はフラッシュでテストしていましたが、ボックスはあなたのページのいずれかをめくります。同じロジックを適用するだけです。

于 2010-01-22T19:27:06.263 に答える
0

Flash&MathのMatteoは、このための優れたソリューションを提供しています。彼は実際に、オブジェクトをネイティブ3D空間に持ち込むと、オブジェクトの幅と高さの両方が1ピクセル拡大することを発見しました。これは、オブジェクトを縮小してからzを0に設定することで打ち消すことができます。これにより、オブジェクトが拡大されます。これで、オブジェクトをぼかしなしで再生する準備が整いました。

http://www.flashandmath.com/flashcs4/blursol/index.html

追加:これにより、スケールの問題は修正されますが、ぼやけは修正されません。上記の行列変換修正を引き続き使用する必要があります。

于 2010-08-25T22:06:56.753 に答える