2011-07-12 6 views
1

私は現在、池のフラッシュアプ​​リケーションを構築しています。水リップル効果があります。レンダリングされると、実際に自分の機能がマウスの位置に描画されるとき、水リップル効果は私のマウス位置にありません。私はフラッシュプレイヤーでショーの再描画領域を行い、添付されたpicture.does誰もがこの問題を解決する方法を知っていますか? enter image description hereキャンバスからフラッシュ領域を再描画しますか?

addEventListener(MouseEvent.MOUSE_MOVE,onMouseMoveTriggered); 
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDownTriggered); 
private function onMouseMoveTriggered(e:Event):void { 
      if (canPlay) 
      { 
      waterMovementSound.play(); 
      canPlay = false; 
      soundTimer.start(); 
      } 
      myRippler.drawRipple(stage.mouseX, stage.mouseY, 10, 0.9); 

      //evt.stageX 
      //evt.stageY 
     } 
     private function onMouseDownTriggered(e:Event):void { 
      myRippler.drawRipple(stage.mouseX,stage.mouseY, 10, 0.9); 
      stage.mouseX; 
      stage.mouseY; 


     } 
+0

コードを掲載することはできますか?マウスの移動リスナーを追加し、キャンバスの座標系からmouseXとmouseYを確認していますか? –

+0

こんにちは、iveは、エフェクトが描画される関数を追加しました – sutoL

+0

@kyrogue Btw、本当にクールに見える! – Marty

答えて

0

私の魚がキャンバスの最大Yと最大Xの近くのランダムなx、yポイントに向かって泳いでいるとき、この問題は回避されます。そのため、生成されたランダムなXY値魚が最大Yと最大Xよりもはるかに少ない水で泳ぐため、それは縁の近くで泳ぐことはありません。

2

私はあなたがstage.alignがTOPLEFTとにStage.scaleModeに設定されていることを確認する必要があると思うだろうあなたが実際にセットアップを異なる持っている必要がない限り、noScaleにに設定されています。

まだ問題がある場合は、ネストされたコンテナ(Sprite、DisplayObjectなど)の内部に描画され、オフセットされている可能性があります。その場合、マウスに関する位置問題の問題を解決するためにglobalToLocalを使うことができますか?

+0

私は同意します - これはglobalToLocalが解決するはずです。 – Bosworth99

+0

私の階層はこのようになり、waterMain(ドキュメントクラス) - >は背景の子を持ち、britにはリップラーが描画され、同じドキュメントクラスには "Fishes"オブジェクトの子があります。 – sutoL

+0

事は、私がそれに魚のオブジェクトを追加しても効果がないのです。私はそれらを追加すると水の波紋が乾いて始まります。 – sutoL

関連する問題