- 2008-04-17 0:17
- papervision3d
以前参加したgungiで講演して頂いたgremzというサービスにインスパイヤされて、久々にPV3DとTweenerの話題。
gremzとは
グリムスは、ブログで苗木を育てる育成ゲームです。 育成中の苗木はブログパーツとしてあなたのブログに貼り付ける事が可能です。…(中略)…苗木は ブログエントリー(投稿)によって成長します。 ブログエントリー毎にぐんぐん苗は成長していきます。
苗木のブログパーツをPV3DとTweenerで作っているそうです。
ブログエントリが少なくなると萎れてきたりと、面白いエフェクトがついていました。
面白そうだったので、私もやってみました。
クリックすると、adamrockerがグチャってなります。もう一度クリックするともとに戻ります。
エフェクトはトライ・アンド・エラーな部分が大きいので、適当にするとこんな感じになります(汗)
Tweenerで各格子点の動きを移動させます。
動きの追加はTweener.addTween()メソッドで行います。
愚直に以下のようにしました。
//--------------------------------------------mouse click private function clickObj (e:MouseEvent):void { var i:*= obj.geometry.vertices; if(isTween) { movePoint(i[1], -10, 30, -10); movePoint(i[5], -5, 30, -10); movePoint(i[9], 5, 30, -10); movePoint(i[13], 10, 30, -10); movePoint(i[2], -5, 50, -20); movePoint(i[6], 0, 50, -20); movePoint(i[10], 0, 50, -20); movePoint(i[14], 5, 50, -20); movePoint(i[3], 0, 70, 0); movePoint(i[7], 0, 70, 0); movePoint(i[11], 0, 70, 0); movePoint(i[15], 0, 70, 0); isTween = false; } else { movePoint(i[1], 10, -30, 10); movePoint(i[5], 5, -30, 10); movePoint(i[9], -5, -30, 10); movePoint(i[13], -10, -30, 10); movePoint(i[2], 5, -50, 20); movePoint(i[6], 0, -50, 20); movePoint(i[10], 0, -50, 20); movePoint(i[14], -5, -50, 20); movePoint(i[3], 0, -70, 0); movePoint(i[7], 0, -70, 0); movePoint(i[11], 0, -70, 0); movePoint(i[15], 0, -70, 0); isTween = true; } scene.renderCamera(camera); }
あまりに愚直すぎますね…(汗)
プロトタイプの段階では微調整が多いのでこうやっておきます。
movePoint()メソッドは以下のように、Tween.addTween()メソッドで実際の動きを設定しています。
private function movePoint(p:*, diffX:Number, diffY:Number, diffZ:Number):void { Tweener.addTween(p, { x:(p.x + diffX), y:(p.y + diffY), z:(p.z + diffZ), time:1, delay:0, transition:"easeOutElastic"}); }
movePoint()メソッドの引数では、移動対象となるポイントと、移動する差分量を指定します。
Tweenerは相変わらずシンプルで分かりやすいですね。使いやすいです。
とりあえずソースコードを公開しておきます。ご自由にご利用下さい。
Plane3D.as
たまには別の言語も触ると刺激になってよいですね。
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://www.adamrocker.com/blog/202/papervision3d_and_tweener_make_25dimension.html/trackback/
- Listed below are links to weblogs that reference
- Papervision3DとTweenerで2.5Dアニメーション from throw Life
