【Flash】昔のFlashで回転してみよう

Flash Player6あたりで3D的な回転をしたいという要望を聞いて実験してみた。
昔からある手法で、縦方向の長さを変えつつ、物体の裏面も見せることで回転しているように見せる処理をためした。

まずは表の写真をムービークリップのフレーム1に配置します。

次にフレーム2に裏側を上下逆に配置します。

このムービークリップの高さを買えることで、擬似的に回転運動を表現します。
縦回転です。
スクリプトはこちら

book_size=255;
kakudo=90;

function anim() {
	kakudo += 5;
	if (kakudo>=360) {
		kakudo = 0.;
	}

	book_h=book_size*(Math.sin((kakudo/180)*Math.PI));
	trace(kakudo+"/"+book_h);
	if (book_h<=0){
		trace("裏");
		book_mc.gotoAndStop(2);
	} else {
		trace("表");
		book_mc.gotoAndStop(1);
	}
	book_mc._height=Math.abs(book_h);
}
setInterval(anim,100);

setIntervalで一定間隔でanimを呼びます。
1回呼ばれるごとに角度を5度増やして、sinで高さを得ます。

高さがマイナスになるのは本が裏になるときで、その時にムービークリップを裏面(フレーム2)にします。

動くムービーはこちら
(※注意「戻る」のリンクではこちらのページに戻りません。)

パースが付けばもっと回転してるように見えるでしょうね。
最新のFlashでは可能なので、次回はパースをつけてみようと思います。

【Flash】JSFLではじめるFlash制作自動化入門

JSFLではじめるFlash制作自動化入門/加茂雄亮

¥1,890
Amazon.co.jp

jsflとはFlashのエディタ上で実行されるバッチ処理の言語。
Flash作成中に100個あるflaファイルをswfに変換(パブリッシュ)するとか、面倒な作業を自動化してくれるツールなのです。
欲しかったんですよjsflの本。
実は私が書きたかったw

しかし、問題は、資料が少ないんですよ、このjsfl
というわけで、Flashで作業する全ての人が、面倒だなぁということが解決できる!・・・かもしれないので、書籍の登場は大歓迎です。

FlashでiPhoneアプリ作れるんだ。知らなかった。


土曜日にAdobeのイベントがあって、モバイル関係のセミナーをみてきた。
最新のFlash5.5を使うとiPhoneAndroidのアプリが出来るらしいというのを聞いて、早速試用版をいれてみた。
土曜の夜、日曜、月曜の3日である程度のゲームができた。
下の台をタッチで動かして、わさび入りの寿司をよけて、寿司を集めるゲーム。

つくってみると簡単だったけど、さらに必要なことが見えてきた。
Appleの登録まではもう少しかかりそうだ。
でも、Flashでこんなに簡単にiOSのアプリが作れるなんて、驚きですよ。
ここ数週間Objective-Cを勉強してたときはあんなに進まなかった開発が・・・(^^A
さらにAndroidへの移植も簡単らしい。(※画面サイズが鬼門かも。)
実験の為にも1台Androidがほしいんだけどなぁ。
みんなにはナイショだよw

カヤックさんのFlashLite勉強会に行ってきました

FlashLite勉強会

花粉舞う3月26日、話題の面白法人カヤックさんがFlashLiteの勉強会をやるというので、恵比寿までお邪魔してきました。

勉強会の内容は

  1. FlashDeveloperによるソーシャルゲーム企画術
  2. FlashLite1.1 ActionScriptテクニック
  3. 書籍には掲載されないFlashアニメーションテクニック

※以上、案内メールより抜粋。

の3つと、その後の懇親会。懇親会はワイワイやりながらトーク、という事だったのですが、花粉症でヘロヘロだったので懇親会は参加できず。駅でうどんを食べて帰りました。うどんの話はさて置くとして、勉強会の内容をメモからまとめてみます。

1 FlashDeveloperによるソーシャルゲーム企画術

企画者の方の解説する、甲子園をテーマにしたゲーム「ぼくらの甲子園」の話。ユーザー同士が協力&競争できるようなシステムを使って、人気を集めた。高校野球という、多くの人に知られているテーマを選ぶのも重要。

テーマ選び、上司の説得、ユーザー対応という企画者ならではの苦悩がよくわかるお話でした。

2 FlashLite1.1 ActionScriptテクニック

プログラマーの方が解説する、「ボーリングパラダイス」で使ったテクニックの話。ゲームは「攻略性」と「操作」と「爽快感」が重要である。100kバイトしか使えないFlashLiteで、ボーリングのアニメパターンが多く、容量で困った。容量を減らすために変数にアニメパターンを圧縮する方法を使った。※音楽のMMLのような感じ。
FlashLiteのプログラムは柔軟な発想でパズルを解くように作る。

みなさん、同じような苦労をしてるんだなぁ、と関心しました。

3 書籍には掲載されないFlashアニメーションテクニック

アニメーションも容量と処理スピードの戦いになる。速度の計測にはDeviceCentralを使う。
アニメーション完成までの順序は
・演出の枠組みを作る。
・容量を調整しながらモックアップを作る。
・メインキャラを中心につくる。
・細かい部分を修正。
というような流れ。

Flashのアニメーション作成というより、アニメの動画マンの仕事を見ているような感じでした。

以上、勉強会はこんな感じ。

まとめ

企画、プログラム、アニメーションと3部門の勉強会だったので、ケータイ用のFlashに関する全体を知りたい人にすごく良かったのではないでしょうか。次回があれば、プログラムまわりをもっと深く聞きたいなぁと思いました。

また、アンケートに書いた質問も答えがメールで来たりして、親切だなぁ、と思いました。会社の雰囲気が楽しげなので、Flash関連で就職したい人にはいいんじゃないでしょうか?

カヤックの皆さん、ありがとうございました。

link:面白法人カヤック
http://www.kayac.com/

東京ひよこ会の勉強会に行ってきました

東京ひよこ会

先日、東京ひよこ会の勉強会が開催されました。

”ひよこ会”はFlashを使う”ひよこ”達が、いろいろ持ち寄って勉強をしようという会です。
実際は、結構ハイレベルなメンバーが集まって、私は割とピヨピヨ言ってる方でした。
20人前後のFlashを使う人達が集まってワイワイやってる感じはいいですね。
”それはコンストラクタでできないの?”とか、説明なしでどんどん専門用語が飛び交う感じも、日常生活にはない感じで面白かったなぁ。

各メンバーの発表はこちらあたりから覗いてみてください。
●にゃあプロジェクト 東京ひよこの会 (第1回勉強会) レポート
http://www.project-nya.jp/modules/weblog/details.php?blog_id=1363

うすあじの発表はケータイ用FlashLite1.1

私、うすあじはケータイでの上下キーの読み取り、をデモしました。
こんな感じの

元ネタは以前作ったブログで、下記に詳しくスクリプトの解説があります。
FlashLiteで上下キーを使う
http://d.hatena.ne.jp/usuajisoft/20091011/1255291091

今回集まった”ひよこ”さんの中にはFlashLiteを普段使ってる人が少ないようだったので、詳細な解説というより、こんな風にやってますよ、という大まかな説明だけを一応して終わり。もっと色々持っていけばよかったなぁ、と反省もしたりして。

まとめ

普段、家で一人でFlashを使う時間が長いので、外にでてFlash使う人にあって、困ってることを聞いたり話したり、ワイワイご飯を食べたりするのはなかなか刺激になっていいなぁ。まあ、非常に当たり前の感想ですが、本やWEB以外の刺激も重要だな、とFlashの集まりで思ってみたりしました。

他の言語、分野の人も集まって勉強会とかやってみるのもいいんじゃないでしょうか?

最後に

会場を提供いただいた有限会社ビバマンボ様、参加された”ひよこ”のみなさん、幹事の@c_geruさん、ありがとうございました。

iPadなどFlashのない端末での対応

mixiで質問に答えたので、こちらにも書きます。

iPadiPhoneではFlashが動かないのですが、その場合どうしたらいいか?

HTMLに判定をいれて、Flashが再生できない場合には、代わりのグラフィックを表示する方法が一般的です。
これを”代替えグラフィック”といいます。

Flashのメニューから
パブリッシュ設定」の「Flashのバージョンを検出」にチェックをいれて、HTMLをパブリッシュすると、この処理に便利な判定が書き出されます。

HTMLファイルには

  1. Flashのバージョンが合っている場合の処理。(通常)
  2. JavaScriptは動作するがFlashのバージョンがあっていないか、プラグインがない。(エラー)
  3. JavaScriptが動作しない。(エラー)

の3パターンの処理が書かれています。

ipadの場合は2が表示されます。

書きだしたHTMLファイルには「代替 HTML コンテンツをここに配置する必要があります。」という文字が2つあります。
<script>内1つが上記2の場合。
<npscript>内にあるもう1つが3の場合です。

2にあたる部分の文字にイメージタグを書くとiPadで表示できます。