Action Script 3.0

経路探索アルゴリズムA*をActionScript3.0で実装してみた

ひさびさにプログラムネタ。

経路探索ってものを作ったことがなかったので、作ってみた。
A*(Aスター)というヤツがメジャーらしいので、それを。

このFlashの適当な場所をクリックすると、壁をよけてうまい具合に丸が動いて、クリックした場所にたどり着きます。

なかなか楽しい。

玉の移動にTweenerを使用。

参考は、WikipediaのA*と、gan2さんのRubyのコード


Node.as


AStar.as

| | コメント (3) | トラックバック (0)

Papervision3Dでメタセコイアのmqoファイルを表示する

出来るらしいというのは知ってましたが、やったことなかったのでやってみました。

<<-- MqoSample.swf -->>

この表示されてる戦闘機は、DOGA-L1で作ったモノ。

それをMetasequoia LEで読み込み、mqoファイルを作成。

このあたりの作業方法は、んぱかさんとこを参照のこと。

4

Macユーザーの僕は、VMWare Fusionでこの一連の作業を行いましたが、仮想マシンの3Dアクセラレーションがなくても特に問題ありませんでした。

mqoファイルの読み込みには、Metasequoiaクラスを使用。

現在は、Papervision3D 1.7を中心に使用しているので、1.7用のファイルをダウンロードして使用。

1.7用のファイルは、クラス名がMetasequoiaとなっていて使い勝手が悪かったので、Metasequoia_1_7に変更して使用。

MqoSample.as

| | コメント (2) | トラックバック (0)

GoogleMapの画像を3Dのテクスチャとして張ったFlashを作ってみたのだが・・・

Shot

ブログにアップしてみたら、さっぱり動きませんでした(笑

エラーとしては次の内容。

SecurityError: Error #2122: セキュリティサンドボックス侵害 : BitmapData.draw:http://shin-ishimaru.cocolog-nifty.com/swf/Pv3dGoogleMap-debug.swf は http://mt0.google.com/mt?n=404&v=ap.74&hl=ja&x=116426&s=&y=51606&zoom=0&s=Gali にアクセスできません。ポリシーファイルが必要ですが、このメディアがロードされたとき、checkPolicyFile フラグが設定されませんでした。
    at flash.display::BitmapData/draw()
    at Pv3dGoogleMap/loop3D()[/Users/shin_ishimaru/Sites/ActionScript3/Pv3dGoogleMap/Pv3dGoogleMap.as:134]

どうも、googleのサーバのほうにcrossdomain.xmlを設置してないんで、セキュリティーエラーになっちゃうみたいですね。

ローカルのデバッグモードでは動いて、画像はそのスクリーンショット。

テクスチャは秋葉原駅のあたりの地図。
Google Maps API for Flashで読み込んでいます。

参考資料は、nitoyonさんのGoogle Mapsで鈴鹿サーキットFlash版のソース。

しかし、googleさん、crossdomain.xml設置してよ!

Vote for crossdomain.xml for Google APIs and services

Pv3dGoogleMap.as

| | コメント (0) | トラックバック (0)

ARToolKitのFlashへの移植

4

おお、ついにやってくれた人が!

ARToolKitをFlashに移植したよ。

これは素晴らしいガッツ。

動くデモはこちら

画像は僕が動かしてみてるところ。
ちゃんと動くなー。

これは良い。

| | コメント (1) | トラックバック (0)

Adobe Flash CS3でユーザインターフェイスを作ってFlex Builder 2(または3)でロジックを組み込む

どうも、そういうことが出来るらしいというのは知ってたんですが、このたびやってみました。
こらなかなか、便利ですな。

矢印ボタンが手書きのため、やたらとゆるいですが(笑

1

Flash CS 3で、UIになるFlash作成。

ベースになるMovieClipを作って、シンボル化。
SimpleButton、TextFieldなどのコントロール類を置いたら、SWFを作成(ここではUISkin.swfというファイルを作成)。

次に、この作成したswfをFlex Builderで作成したプロジェクトのディレクトリ内に置く。

2

Flex Builder 2で、このSWFを読み込み、そのSWF上のコントロールに発生するイベントを処理するコードを書けば完成。

このサンプルのボタンを押すと数字が足されたり引かれたりする処理は、Flex Builderで書いたActionScriptによって処理されています。

コードは下記のSymbolEx.as。

参考文献は、布留川英一氏のAIR本。

Adobe AIRプログラミングガイド Book Adobe AIRプログラミングガイド

著者:布留川 英一
販売元:毎日コミュニケーションズ
Amazon.co.jpで詳細を確認する

この本の「FLVプレイヤー」の項に、詳細なやり方が書いてありますので、より詳しい説明を読みたい方はこちらをご参照ください。

ユーザインターフェイス部分のswfである、UISkin.swfと、UISkin.flaもアップしておきます。

Download: UISkin.swf

Download: UISkin.fla

SymbolEx.as

| | コメント (0) | トラックバック (0)

Webカメラ画像の色重心を判定するFlash

を作りました。

画像内で、青色の部分をラベリング。

その上で青色の面積が一番広いところの、重心を求めて表示します。

3_2

こんな感じで青色のファイルをかざすと、

2

青色と判定された部分を白で表示して、重心に水色の丸を表示。

処理的には、そこそこ早いのでゲームなんかにマウスポインタ的に気楽に使うのに良いんじゃないかなと。

[参考資料]

重心を求める部分は、OpenCVプログラミングブックの肌色追跡の部分に載ってた画像モーメントの式。

OpenCV プログラミングブック OpenCV プログラミングブック

著者:奈良先端科学技術大学院大学 OpenCVプログラミングブック制作チーム
販売元:毎日コミュニケーションズ
Amazon.co.jpで詳細を確認する

ラベリング部分は、flashrodさんのAS3でARを参考に。

ColorGravity.as


CenterOfGravity.as


LabelData.as


CameraFramework.as

| | コメント (0) | トラックバック (0)

背景差分法で背景部分を判定するFlash

を作りました。

背景画像を撮影して、その前に人が来たりすると、その差分から人の部分(前景)と背景を計算して表示します。

まず「背景画像撮影」ボタンを押して、背景画像を撮影。

7

そのうえで、自分がカメラの前に来たりすると、背景部分を赤、前景部分を黒で描画します。

うまく行けば、こんな感じにシルエットが表示されます。

6

でも、あまりうまく動かないんだよなー。

カメラのフォーカスが変わるからか、自動的に露光調整してるためなのかよくわからんのですが。

BackGroundDiff.as


CameraFramework.as


TextButton.as

| | コメント (0) | トラックバック (0)

WEBカメラの画像をグレースケール化するFlash

「ActionScript3.0での画像のグレースケール化ってどうやったら高速にできんのかな?」

と今週頭くらいに思ってたら、ちょうど良くてっく煮ブログさんに投稿されたコードがそのものずばり。

いやはや、ありがとうございます。

自分の勉強用にColorMatrixFilterでのグレースケール化コードを作成しました。

まったく同じでもつまらないので、二つのグレースケール化方法を実装しています。

一つは、RGBの平均からグレースケール化する方法。

もう一つは、人間の生理的な特性から色の重み付けを計算する方法。

カラーテレビを白黒にするのと同じ仕組みです。

8

このように赤いファイルを写して、それぞれでグレースケール化してみます。

12
RGB平均。

11
重み付き平均。

重み付き平均のほうが、若干キレイな感じがしますね。

グレースケール化のアルゴリズムの参考にしたのはこちら。

[< グレースケール > Le Premier Soleil]

GrayScale.as


CameraFramework.as


TextButton.as

| | コメント (0) | トラックバック (0)

WEBカメラの映像をクロマキー処理するFlashを作った

最近好きなFlashでのWEBカメラ操作系ですな。

今回はクロマキー処理をするやつを作ってみました。

クロマキーってのは、青い背景の前とかで人が動いて背景画像を合成する、テレビとかでよく使われてるやつですね。

背景画像として、用意したのは、神田方面からの秋葉原のほうを撮ったこの写真。

Background

で、こんな感じで青い背景の前に、太陽の塔を置きます。

6

Chromakey ONボタンを押すと、背景が合成!

5

秋葉原に太陽の塔あらわる!!

ちょっと青の抜け悪いけど(笑

今回のこのFlashは、光の加減やバックの色の問題で、なかなか試せないと思いますが(笑

こんな感じの舞台装置を作って実験しました。

P1000244

自作クロマキー舞台装置。休みの日に家で一人で、何やってんねんという感じも。

P1000246

これ、やたらと青の原色に近いワイシャツですな。

P1000247

シャツをひっかけてるのは、A4のファイルという手作り感。

P1000248

しかし、こんなシャツ、オレ持ってたっけか?

でもクロマキーに便利で助かった。

ソースコード的には、BitmapDataに備え付けのAPIを活用してるんで、かなり処理速度は速いですね。

そのあたりの勉強も兼ねて。

ChromakeyCamera.as


CameraFramework.as


TextButton.as

| | コメント (0) | トラックバック (0)

WEBカメラの映像を色々な色相でモノクロ化するFlashを作った

これを作りました。

一回画像をRGBカラーから、HSVに変換。

その上で、色相と彩度を一定値に固定して、RGBカラーに戻しています。

5

彩度220、色相220で、水色がかったモノクロ画像。

6

彩度220、色相100で黄色がかったモノクロ画像。

8

彩度220、色相0で赤みがかったモノクロ画像。

これ、なんで作ろうかと思ったかというと、PhotoShopのマジックワンドツールみたいな、色選択処理を作ろうと思ったんです。

HSVに変換して、色相で範囲指定しようかなと。

でも、速度的に考えると、これでやるのはイマイチかなー。

あんまり速度でてないし。

ラベリングもやろうかと思ったら、てっく煮ブログさんのほうでやってますね。

void element blogさんのところでやってる高速化処理も勉強になる。

BitmapDatathresholdgetColorBoundsRect、なんて面白いのがあったのか。

知らなかったです。

もうちょっとリファレンスよく読むべきですなー。

noizemergeも面白そう。

参考文献は、OpenCVプログラミングブック。

OpenCV プログラミングブック Book OpenCV プログラミングブック

著者:奈良先端科学技術大学院大学 OpenCVプログラミングブック制作チーム
販売元:毎日コミュニケーションズ
Amazon.co.jpで詳細を確認する

HSV変換コードは、ここを参考に。

ソースコードが以下。


HSV.as


SepiaCamera.as


CameraFramework.as


TextButton.as

| | コメント (0) | トラックバック (0)

音楽のテンポをiMovie HDのフレーム数で表示するFlashを作った

自分用便利ツール。

iMovie HDの長さ表示は、秒数:フレーム数という表示になっている。

3

1:09だったら、1秒と9フレーム。

1秒あたりのフレーム数は30フレーム。

で、iMovie HDで音楽のリズムに合わせて画面を変更するムービーを作ろうとすると、この特殊な時間表記を計算するのが、かなり面倒くさい。

なんで、音楽のテンポと、そのテンポでの4分音符数を入力すると、自動的にiMovie HDのフレーム数を使った時間表記に変換してくれるFlashを作りました。

これを使って作ったのが、このムービーのオープニング部分ですね。

   

iMovieHD6Frame.as

| | コメント (0) | トラックバック (0)

Webカメラの画像を色調反転させるFlashを作った

前回のWEBカメラの画像をASCIIアート化するやつより断然簡単ですが、色調反転させるやつを作ってみました。

2

「それはすでにノストラダムスが予言していたことなんだよ!」

「なんだってー!キバヤシー!」

って感じですな。

MMRってもう10年くらい前だからネタが古すぎるか。

3

「フンフンフン♪1999年7の月はもうとっくに過ぎてるぜー♪」

と、21世紀生まれの石丸レイチェル。

NOEFFECTボタンで通常描画。

目的としては、カメラ処理をフレームワーク化したコードを作りたかったんですよね。

あまりActionScript3.0で派生クラスや、overrideも使ったこと無かったので、基底クラスのほうにWEBカメラ処理のだいたいのものを持たせて、アプリケーションクラスのほうで、エフェクト描画、ボタン処理を実装。

という設計にしました。

アプリケーションクラスが、InverseCamera。

フレームワークになってる基底クラスが、CameraFramework。

って感じですね。

これで今後は、このタイプのやつはCameraFrameworkを使い回して、アプリケーションクラスで描画部分だけ作ってやれば出来ると。

色調反転の描画は色にXORしてるだけですね。

コードが以下。


InverseCamera.as


CameraFramework.as


TextButton.as

| | コメント (0) | トラックバック (0)

Flash Playerのカメラ設定

[WEBカメラの映像をアスキーアート化するFlashを作ってみた]

が動かないという話を結構聞くのでFlash Playerの設定説明を。

3

Flash右クリックで出るウインドウ。こから「設定」を選択。

4

使用するWEBカメラを選択します。

これで動くカメラを選択すれば、Flashのほうも動きます。

Adobeの公式の情報はこちら。

[Adobe - Flash Player:カメラの設定]

| | コメント (0) | トラックバック (0)

ActionScript3.0で使用できるアニメーションライブラリTweenerを使ってみる

※更新履歴
 * 2007/08/01 初出
 * 2007/09/13 動きが完了した時の処理を追加。この処理は結構使うと知りたくなるので。

ActionScriptで使用できるアニメーションライブラリでは、FuseKitTweenerという2つのライブラリがあるようだ。

FuseKitで出来ることを確認するためのサンプルとしては、次のサイトがわかりやすく参考になる。

[FuseKiが便利でしょうがない | WSGスタッフブログ]

FuseKitのほうは、残念なことにActionScript2.0でしか使うことができない。

3.0対応は、先のバージョンで行うとのこと。

そこでTweenerのほうを試してみることに。

Tweenerにある41のアニメーションパターンを全て試せるサンプルを作ってみました。

ADDボタンで、次のアニメーションプリセットへ。

DECボタンで、前のアニメーションプリセットへ。

マウスクリックで黄色い円が、アニメーションプリセットに従って動き、黄色い円の動きが終わるとマウスカーソルに向かって青い円が動きます。

なかなか面白いですね。

こういうのも自分で作ると結構大変だから、これくらい自動的にやってくれるやつがあるとかなり楽。

これくらいのコード量で、これだけ面白い動きができるんだったら、かなり良いんじゃないかな。

参考にしたのは次のサイト。

[NI-Lab.'s ヅラッシュドット: Flex 2 から Tweener を利用してみる]

[flashrod - AS3版Tweenerを使ってみる]


TweenerEx.as


TextButton.as

| | コメント (0) | トラックバック (0)

WEBカメラの映像をアスキーアート化するFlashを作ってみた

最近engadgetで見た、視界をアスキーアート化するゴーグル

これFlashでも出来るよなー。

と思い作ってみました。

WEBカメラがついてるマシンなら動きます。

ワタシはMacBookで動かしてます。

動かない方は、おそらくFlash Playerの設定の問題だと思います。

こちらを参照してください。

[Flash Playerのカメラ設定]

2

カメラに手をかざすシン石丸のASCIIART。


3

ASCIIART化されたシン石丸。

4

MONOボタンを押すとモノクロモードに。

5

NOEFFECTボタンでアスキーアート化されるエフェクトが切れます。

参考資料は、布留川英一氏のFlash本。

 

ActionScript 3.0ゲームプログラミングブック (Flash for Professionals) ActionScript 3.0ゲームプログラミングブック (Flash for Professionals)

著者:布留川 英一
販売元:毎日コミュニケーションズ
Amazon.co.jpで詳細を確認する

と次のサイト。

[Java Ascii アート]

※更新履歴

[2007/09/12 16:40] 最適化。ASCII文字を一文字づつ書いてたらあまりに遅かったので一回の描画で書くようにした。

AsciiArt.as


AsciiData.as


TextButton.as

| | コメント (2) | トラックバック (1)

SWFの縦横幅、背景色、フレームレートの設定

今までActionScript3.0でのSWF作成、Adobe AIRの作成では、

<<-- Flash 9 -->>

$ mxmlc -output ./bin/RotButton.swf -benchmark=true -default-size 240 240 -default-frame-rate=30 RotButton.as

<<-- Adobe AIR -->>

$ amxmlc -default-size 240 240 -default-frame-rate=30 -default-background-color=0xFFFFFF Pv3dCube.as

みたいな感じでコンパイルオプションで指定する方法で、幅、高さ、背景色、フレームレートを設定していました。

しかし、これはコードの中に

[SWF(width="400", height="400", backgroundColor="#FFFFFF", frameRate="30")]

このように埋めたほうが、わかりやすいな。

と思ったので、今後こうしようと思います。

今までアップしてたコードも、ポチポチと修正するかな。


| | コメント (0) | トラックバック (0)

他のSWFを通信で読み込んで表示するSWFを作った

他のSWFをhttpで読み込んで表示するFlashサンプルを作ってみました。

読み込むのは、次の2つ。

[ActionScript3.0で、中心点を指定して回転させる]

[ベクターグラフィックって綺麗だな]


SwfLoader.as


TextButton.as

| | コメント (0) | トラックバック (0)

Tweenerのインストール

Tweenerのインストール方法についても、一応忘れないように書いておこう。

難しい点はまったくないんだけど。

1. Tweenerのダウンロード。今回ダウンロードしたのはtweener_1_25_57_as3.zip

2. 解凍する。caurinaというディレクトリが作成される。

3. /Developer/SDKs/Tweenerディレクトリを作成して、そこにcaurinaを入れる。

4. 今回、Flex2SDKで作成した。Flex2SDKの設定ファイル、flex-config.xmlを編集しソースにパスを通す。

      <source-path>
         <path-element>/Developer/SDKs/Tweener</path-element>
         <path-element>locale/{locale}</path-element>
      </source-path>

| | コメント (0) | トラックバック (0)

ActionScript3.0で使える物理エンジン

5_3
[Fisix Engine Demo]

技術メモ。

Flash、AIRで使える物理エンジンとしては、次の2つのものがあるようだ。

[Fisix Engine]

[APE (Actionscript Physics Engine)]

Fisix Engineのデモが良くできてる。

この、おネエちゃん動かすやつとか 。

とくにやる理由が思いつかないので、やる気はあまりないんだけど、こんなのあるのか。

というメモ。

| | コメント (2) | トラックバック (0)

AS3.0で別SWFで作成したボタンをリソースとして使う

ボタンだけのSWFを作成して、そのボタンのSWFを、別のSWFで読み込んでリソースとして使うコードを書いてみた。

まず、ボタン部分のSWFがこれ。

このボタンのSWFを、RotButton.swfというファイル名で作成。

そのコードが以下。

RotButton.as




まぁ、ボタンとかは、本来、AdobeのFlashオーサリングツールで、デザイナーの人がきっちり作ればよいんだろうけどね。

とりあえず、今回はボタンもコードで作ってみたと。

で、このRotButton.swfをリソースとして組み込んで、一番上のSWFを作成した。

そのコードが以下のもの。

こっちの組み込んだ側のコードのほうが圧倒的に短いですな。

ポイントは、Embedの使用と、その読み込んだボタンに対してマウス関係のイベントを追加している点ですね。


ReadButton.as

| | コメント (0) | トラックバック (0)

ActionScript3.0、Papervision3Dの全画面化

ボタンを押すと全画面化するサンプルを作ってみました。

が、これブラウザ上じゃ動かないんですね。

そうだったのか。

SWFをダウンロードして、ローカルで実行してみてください。

[DOWNLOAD]

あとは、ソースコード。

今回、ボタン部分を別クラスで作ってるので、コード二つ。

全画面化、標準ウィンドウ化を行っているのは、FullScreen.asのgoFull関数。

CustomButton.as


FullScreen.as

| | コメント (0) | トラックバック (0)

ActionScript3.0で、フォントサイズをテキストの高さに応じて調整する

テキストの文字数が増えても、フォントを小さくすることで一定の範囲に抑えたい。

その上で、できる限り大きく文字を表示したい。

という処理が作りたくなり、作ってみました。

まぁ、わりと普通にできました。

setFontHeightが、フォントサイズを調整している関数。

高さが常に120以下で、最大のフォントサイズになるように処理されています。


TextAdjust.as

| | コメント (0) | トラックバック (0)

ActionScript3.0で、中心点を指定して回転させる

普通に、AdobeのFlashオーサリングツールだと出来るけど、

スクリプトだけで、どうやったら回転の中心点を指定して回転させられるんだろ?

というのが疑問で調べてみました。

DisplayObjectには、rotationって回転のプロパティはあるけど、回転の中心点指定はない。

なんで、ベースとなるオブジェクトを作製して、それに対して回転させたい物体をaddChild。

ベースの原点に、回転させたい物体の回転の中心点をあわせます。

そのため、回転させたい矩形を、X=-50、Y=-50に配置。

そのベースのrotationで回転させることで、回転の中心を決めてやる。

という方法でやれば、良いみたい。

サンプルは、もっと単純でも良いんだけど、Filterかけてたほうがカッコイイから、コード長めで(笑


ShapeRot.as

| | コメント (0) | トラックバック (1)

ベクターグラフィックって綺麗だな

ベクターグラフィックを普通に使ったFlashを作ってみました。

Flash使っても、昔ながらのGIFファイルとかを埋め込んだりする使い方が多くて、ベクターグラフィックをあまり使ってなかったんですよね。

いまさらなんだけど、ベクターグラフィックを使ってみたら、

「これは綺麗だな!」

と関心した次第。

ベクターグラフィックはなんかきれい。

というのは知識としてあったんだけど、

あー!これは良いじゃん!

と、今日ようやく、感情をともなって思ったという話なんですよね。

ソースは以下。

※2007/09/04 ソースコードを更新。SWFの大きさ設定、大きさ取得をコードに追加。


VectorMove.as


MoveObject.as

| | コメント (0) | トラックバック (0)

Xcode用のActionScript 3.0テンプレートを作った

どうも、MACで無料で入手できる統合開発環境、Xcodeで、Flex 2 SDKを使ってFlashを作成できるらしい。

というので、調べてたんですが、どうも元にするテンプレートがよくない。

テンプレートは、ここで配布されているのですが、MXMLというイマイチ好きになれない言語用のテンプレート。

これは全然使う気になれない。

なんで、ActionScript 3.0ベースのを自分で作りましたので、公開します。

Download: actionscript30_template.zip

これを展開したら、

/Library/Application Support/Apple/Developer Tools/Project Templates/

の中にFlashというディレクトリを掘り、入れてください。

これを入れて、Xcodeを起動。ファイル -> 新規プロジェクトを選択すると、

1_4

Flash -> Action Script 3.0 Templateというのが増えているので、これを選択。

3_3

プロジェクト名を置く場所を決めましょう。ここでは、HelloWorld。

4

すると、元になる簡単なActionScript3.0のソースコードが作成されるので、ビルドボタンを押す。

5

すると、binディレクトリの中にswfファイルがビルドされます。

6_1
ダブルクリックすれば、見事実行!やったぜ!

という感じで、快適に開発できます。

これはなかなか便利。

このテンプレート、Flex 2 SDKは、/Developer/SDKs/Flexにある前提になってます。

あと、ActionScript 3.0のオートコンプリートも入れるとさらに便利。

http://opencode.forabettertoday.org/?p=11

こいつを、/Library/Application Support/Apple/Developer Tools/Specifications/
にいれてやればOK。

はてさて、これから楽しもう。

| | コメント (0) | トラックバック (1)

MAC OS X へのFlex SDK 2のインストール

ActionScript 3用のAdobeから出てるフリーのコンパイラ、Flex SDK 2をMACへインストールしました。

そんなに難しいことでもないんだけど、技術メモ。

  • Flex 2 SDK のインストール
    • AdobeのFlex 2 SDKのページより、Flex 2 SDKをダウンロード(flex_sdk_2.zip)。
    • 同ページより、Language Packダウンロード(flex_sdk_2_ja.zip)。
    • それぞれを解凍
      • flex_sdk_2を解凍したものに、flex_sdk_2_jaの中身を上書き
      • libなどディレクトリをコピーする時は、flex_sdk_2の元々入ってたファイルを消さないように注意。
        • MACのターミナルから、
        • #mkdir flex_2_sdk
        • #unzip flex_sdk_2.zip -d flex_2_sdk
        • #unzip flex_sdk_2_ja.zip -d flex_2_sdk
        • とするのが、確実かつ楽かも。
    • 適当な場所に、解凍したディレクトリを配置。
      • 自分の場合は、/Developer/flex_sdk_2 に。
    • flex_2_sdk/player/SAFlashPlayer.dmgを解凍。適当な場所にインストール
      • 自分の場合は、/Developer/flex_sdk_2/bin に。
  • Flex 2 SDKでのビルド
    • ターミナルでビルドするためのPATHを設定する。
      • .bash_profileに記述
        • export PATH=/Developer/flex_sdk_2/bin:$PATH
      • 書いたら、
        • #source .bash_profile
      • とすれば、すぐ環境変数に反映。
    • あとは、HelloWorldでもビルドしてみましょう。
    • HelloWorldのソースコード、及びビルドコマンドについては、ActionScript3.0メモを参照のこと。HelloWorld.asを作成し、ターミナルから、ビルドコマンドを入力しましょう。
  • ビルドしたswfの実行
    • swfファイルは、インストールした、SAFlashPlayerで実行する。
    • swfファイルを選択し、Finderの、ファイル->情報->このアプリケーションで開く、からSAFlashPlayerを選択し、ファイルの関連づけをすると便利。
  • その他
    • ターミナルから、mxmlcでビルドする時、はげしくメッセージが文字化ける場合があります。
      • ターミナル->ウインドウ設定->ディスプレイ->文字セットエンコーディングから、日本語(Mac OS)を選択すると、普通に表示される。

|

Action Script 3.0でブロック崩しを作ってみた

Action Script 3.0の勉強に、習作としてブロック崩しを作ってみました。

Flash Player 9が必要です。

しかし、さっさと出来るかと思ったら、ブロック崩しって、わりと面倒ですねー。

横の壁に当たったのか、縦の壁にあたっているのかの判定が。

ひさびさに内積やらなんやら、つかってしまいましたが。

でもとりあえず、だいぶAction Script 3.0がわかったかな。

はまった点としては、このブログを書くのに、Flash Player 9のswfファイルをどうやってウェブページに貼り付けてよいかわからず、だいぶ調べましたが、こんな感じで書けばよい様子。

<object width="240" height="240" align="middle" id="BlockBuster" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">
<param value="sameDomain" name="allowScriptAccess" />
<param value="http://shin-ishimaru.cocolog-nifty.com/swf/AS30/BlockBuster.swf" name="movie" /><param value="high" name="quality" /><param value="#999900" name="bgcolor" /><embed width="240" height="240" align="middle" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" allowscriptaccess="sameDomain" name="BlockBuster" bgcolor="#FFFFFF" quality="high" src="http://shin-ishimaru.cocolog-nifty.com/swf/AS30/BlockBuster.swf"></embed>
</object>

この太字の箇所を編集すれば、他だいたい使えるんじゃないかと。

ネットでさんざん検索してもわからず、結局Adobe Labから、Adobe Flash 9のPublic Alpha版をインストールして、Publish用のhtmlを作成。

その結果、出力されてきたのが、このタグだったというわけです。

|