Subscribe to RSS Feed ログイン

FLASH備忘6|ActionScriptやらWordPressやらを楽しむ会

Thursday
2010年9月09日

面白FLASHゲームDad n Me Game Online

連続技が使いのアクションゲームです。キャラクターの動きが軽快で時々出るカッコイイ技が決まるとスカッとした気分になります。シンプルなゲームだけどやはり制作には相当な苦労があったのかな。

 screenshot.274screenshot.275screenshot.276

上の画像でかっこいいシーンをキャプチャしようと思ったのですが、予想に反して情けないシーンが集まってしまいました。

Dad n Me Game Online.

コメント(0)続きを読む

波動方程式を使ってTOTOのFLASHを再現したい。

 

TOTOのサイトの水面の断面図を再現しようと色々しらべて、ActionScript 3.0で実験していますが、なかなかうまくいきません。

screenshot.261

http://www.toto.co.jp/

どうやら波動方程式を応用するようで、とりあえず公式をActionScript 3.0にしてみました。

2次元波動方程式の数値計算例(C言語)

http://www.geocities.jp/supermisosan/secondwaveequation.html

しかし、式のどの部分をいじれば改良できるのか。まだまだ検討中です。

  

var N:int=100;
var tmax:int=3;
var c:Number=1;
var dt:Number=1;
var dx:Number=1.5;

var t:int=0;
var i:int;
var j:int;

//ステージを画面に100%表示 
stage.scaleMode=StageScaleMode.NO_SCALE;
stage.align=StageAlign.TOP_LEFT;

//二次元配列の作成
//二次元配列(二次元目
var subYs:Array = new Array();
for (j = 0; j < N; j++) {
 subYs.push(0);
}
//二次元配列(一次元目
var Ys:Array = new Array();
for (i=0; i<tmax; i++) {
 Ys.push(subYs);
}
var sps:Array = new Array();

for (i=0; i<N; i++) {
 var sp:Sprite = new Sprite();
 sp.graphics.beginFill(0xff0000);
 sp.graphics.drawCircle(0,0,2);
 addChild(sp);
 sps.push(sp);
}

//波の初期条件の決定
 for (i=0; i<N; i++) {
  if (30<i&&i<70) {
   Ys[0][i]=-150;
  } else {
   Ys[0][i]=0;
  }
  //trace(Ys);//fprint
  graphics.beginFill(0x000000);
  graphics.drawCircle(i*5, Ys[0][i]+stage.stageHeight*1/4,2);
 }
//マウスダウンのときに再初期化
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMD);
function onMD(e:MouseEvent):void {
 t = 0;
 for (i=0; i<N; i++) {
  if (0<i&&i<100) {
   Ys[0][i]=-550;
  } else {
   Ys[0][i]=0;
  }
  //graphics.beginFill(0x00ff00);
  //graphics.drawCircle(Math.random()*stage.stageWidth,Math.random()*stage.stageHeight,10);//fprint
 }
}
//n

//初期状態から次の状態を計算する
addEventListener(Event.ENTER_FRAME, onEF);

function onEF(e:Event):void {
 t++;
 if (t==1) {
  for (i=1; i<N; i++) {
   Ys[1][i]=Ys[0][i]+c*c/2*dt*dt/(dx*dx)*(Ys[0][i+1]+Ys[0][i-1]-2*Ys[0][i]);
  }
  Ys[1][0]=Ys[1][N-1]=0;//境界条件
  for (i=0; i<N; i++) {
   //trace(Ys);//fprintf
   graphics.beginFill(0x000000);
   graphics.drawCircle(i*5, Ys[1][i]+stage.stageHeight*2/4,2);
  }
 } else if (t>=2) {
  //以降の波の状態を計算する

  for (i=1; i<N; i++) {
   Ys[2][i]=2*Ys[1][i]-Ys[0][i]+c*c*dt*dt/(dx*dx)*(Ys[1][i+1]+Ys[1][i-1]-2*Ys[1][i]);
  }
  Ys[2][0]=Ys[2][N-1]=0;
  for (i=0; i<N; i++) {
   //trace(Ys);//fprintf
   sps[i].x = i*5,
   sps[i].y = Ys[0][i]+stage.stageHeight*3/4;
  }
  //n
  for (i=0; i<N; i++) {
   Ys[0][i]=Ys[1][i];
   Ys[1][i]=Ys[2][i];

  }
 }
}

コメント(1)続きを読む

FLASHサイト「KGO」がすごすぎる件

FLASHサイトの「KGO」がすごいFLASH公開しています。

 

screenshot.254

screenshot.253

とりあえず見てみてください。

KGO

http://www.y-chaki.com/index.html#1

コメント(0)続きを読む

FLASH本。「ActionScript 3.0辞典」 買いました。

ActionScript 3.0辞典 [FlashPlayer10/9対応]
伊藤 のりゆき (著), 大重 美幸 (著), 野中 文雄 (著), 植木 友浩 (著), 林 拓也 (著)

ActionScript 3.0の辞書が前々からほしかったのですが、どれにしようか悩んで結局買えない日が続いていました。年末集中的に制作しようと決め、ついに買ってしまいました。

20091226133149

似たような本が何冊がでているので本当に迷いました。この本に決めた理由はつぎです。

  • 辞典の中でも出版日が最新
  • 3Dなどそのほかの辞典では対応しきれていない最新の技術が乗っていること
  • 本体がわりとちいさめで、机のじゃまになりにくい
  • 絵は少なめだが、サンプルスクリプトが充実して、かつ、わかりやすい。
  • 辞典の中でも読みやすい方であった。

まだパラパラとしかめくっていませんが、ひとつFLASHを作ってみると、わからないスクリプトを調べるときに、パソコンで検索より、本で探した方がはやいことに気付きました。

また、空いた時間にパラパラとめくっていくだけでも色々な発見があっておもしろいです。この辞典をもとに新しいアイデアが生まれそうです。

この本がぼろぼろにはなるころにはActionScript 3.0が上達しているはず。

ActionScript 3.0辞典 [FlashPlayer10/9対応]
伊藤 のりゆき 大重 美幸 野中 文雄 植木 友浩 林 拓也
翔泳社
売り上げランキング: 19911

コメント(0)続きを読む

クリスマスツリーFLASH。2009年クリスマスカード

クリスマスカードなるものが世間では流行っているそうで、WEBレターと言ってメールでクリスマスカードを送る人も多いそうです。

WEBの制作会社では自社のデザイン力をアピールするために、総力を結集して、WEB年賀状を作成するという話も聞いたとこがあります。そこで、自分でもActionScript 3.0を使ってクリスマスカードを作ってみました。

2009 FLASHクリスマスカード(右クリックで保存)

すぐできると思いきや、予想を大きく上回り、3時間以上かかっていました。

上手くいかなくて時間がかかった点。

  1. 雪の動きにリアル度を上げること
  2. 変数を配列に割り当てて、あとで取り出す

 1番は何度もプレビューを繰り返して再現。さらに本来の雪と同様につもるように工夫しました。

2番は単純に知識と経験不足。変数を配列に割り当てている部分でミスに気がつかず苦戦。

ちなみに、雪に関しては少しこっています。工夫した点は次です。

  1. 雪はランダムに上から落ちてくる
  2. 雪は左右にランダムに揺れながら落下
  3. それぞれの雪に透過性と大きさを設定
  4. 下まで落ちた雪はその場に積もる
  5. 時間がたつごとにどんどん上に積もっていく

どんどん雪が積もっていくということで初期では、ブラウザ画面を起動していればずっとつもよるようにしていました。

自分でも公開した画面を確認し、しばらく放置。しらばくするとなんかパソコン動作がおかしい。異常に重い。

ということで、デバイスマネージャーを見てみると、どうやらIEが動作が原因とのこと。そしてIEを改めて立ち上げてみると、さきほど公開したばかりのクリスマスカードの画面がとんでもないことになっていました。

screenshot.246screenshot.251screenshot.249

つもった雪はパソコンのメモリとCPUをどんどん圧迫し、IEの応答しない、終了もできない。最近購入した自慢の高性能パソコンも苦しんでいます。(下の画像)あわてて修正して再度公開まで至りました。 

ちなみに↓がパソコン泣かせのクリスマスカードです。数分開いているとブラウザの動きが鈍くなります。

(パソコン泣かせの)初期クリスマスカード(クリスマスツリー)

再度、アップロードしたクリスマスカードははじめの数分は つもっていく動作をみせますが、しばらくすると積もらなくなります。これでメモリとCPUの以上の問題は解決。クリスマスカードとしてはこれで十分。ついでに文字も加えておきました。

一日遅れのハッピーメリークリスマス。次は年賀状だ。

  var yukis:Array = new Array();
var rads:Array = new Array();
var angles:Array = new Array();
var tumo:Sprite = new Sprite();
var i:int = 0;
var yuki_num:int = 200;
var tumoh:Number = -2;
var angle:Number = 0;

for(i=0; i&lt;yuki_num; i++){
 var yuki:Sprite = new Sprite();
 var size:Number = Math.random();
 yuki.graphics.beginFill(0xffffff, size * 0.3 + 0.7);
 yuki.graphics.drawCircle(0,0,size*2+3);
 yuki.x = stage.stageWidth * Math.random();
 yuki.y = stage.stageHeight * Math.random();
 angle = 30 * size + 30;
 angles.push(angle);
 rads.push(0);
 addChild(yuki);
 yukis.push(yuki)
}
addChild(tumo);

addEventListener(Event.ENTER_FRAME,onEF);

function onEF(e:Event):void {
 //trace(tumoh);trace(5 * Math.sin(rads[10]));
 tumoh += 0.005;
 for(i=0; i&lt;yuki_num; i++){
  yuki = yukis[i];
  rads[i] += Math.PI / angles[i];
  yuki.x += 1 * Math.sin(rads[i]);
  yuki.y += 2;
  
  if(stage.stageHeight - tumoh &lt; yuki.y){
   tumo.graphics.beginFill(0xffffff);
   tumo.graphics.drawCircle(yuki.x,yuki.y-Math.random()*2,5);
   yuki.y = - 10;
   yuki.x = Math.random() * stage.stageWidth;
  }
 }
}

コメント(0)続きを読む

チームラボのFLASHがすごい。

チームラボのFLASHがすごい。

screenshot.236

5年前以上にかなりはまったただいじるだけのゲーム

「すなめ地獄」

に似ています。

DOFI-BLOG どふぃぶろぐ すなめ地獄 (HELL OF SAND)
http://ishi.blog2.fc2.com/blog-entry-164.html

チームラボのFLASHがすごいのは
図形の衝突判定。
三角形でも、長方形でもより自然に衝突して跳ね返る。
これがなかなか考えることができない物理計算。
さらに、図形ではなく、適当な落書きも形状を認識して
地面やら他の物体と衝突する。

一体どうやっているのだろう。

LOGO_mini

 チームラボ株式会社-TEAM☆LAB Inc.
http://www.team-lab.com/

コメント(0)続きを読む

面白法人カヤックのFLASHチームのブログです。

面白法人カヤックのFLASHチームのブログです。

screenshot.214

_level0.KAYAC
http://level0.kayac.com/

濃い情報がいっぱいつまっています。
全く見れていません。
FLASHが自由に使いこなせるようになると
きっと面白いものができるというのを予感させてくれます。
このサイトの中ですごいFLASH見つけました。
筆が画面上を走ります。
しかもランダムに筆の流れが変化します。
いったいこんなのどうやって作るんだ?

Labuat
http://soytuaire.labuat.com/

このサイトFLASHはすごいのですが、
肝心のメインサイトは何をしているサイトか全くわかりません。
どうやらスペイン語のサイトらしいです。

screenshot.229screenshot.221screenshot.219

コメント(0)続きを読む

FLASH講座1234(フラッシュ講座)

FLASH講座1234(フラッシュ講座).

コメント(0)続きを読む

Flash3D Papervision3Dを使ってみる。BitmapAssetMaterialクラス

Papervision3Dを使ってみる。

BitmapAssetMaterialクラスを使って描画テスト

3Dの分野はインパクトが強くで制作していてわくわくです。

コメント(0)続きを読む

Papervision3Dではじめる Flash3Dアニメーション: ハヤシ カオル: 本

 

 

Amazon.co.jp: Papervision3Dではじめる Flash3Dアニメーション: ハヤシ カオル: 本

 

今一番気になっている本。

FLASHの世界が一気に広がる気がします。

問題はどう時間を捻出するか・・・

面白いことは間違いない。

コメント(0)続きを読む