タグ

ブックマーク / www.be-interactive.org (7)

  • BeInteractive! [BitmapDataを簡単にマスクする方法]

    既出な気もしないでもないのですが。BitmapDataを思い通りの形にくりぬく、というのをカンタンにやる方法です。 コードは次の通り。 source.copyChannel(mask, mask.rect, new Point(0, 0), BitmapDataChannel.ALPHA, BitmapDataChannel.ALPHA); source、mask共にtransparent = trueなBitmapDataです。sourceには元となる画像を予め描画しておきます。そして、maskの方は0x00000000で塗りつぶした後、くりぬきたい形(例えば丸とか星とか)をdrawしておきます。これで上のコードを実行すると、maskのアルファチャネル値が全てsourceの方にコピーされるので、うまいことmaskの形にくりぬける訳です。sourceが何度も更新される場合でも、mas

  • BeInteractive! [楽に大量のパーティクルを描画する方法]

    一個前のエントリで出した、大量のパーティクルを描画ってヤツですが、眠くてやる気が出ないのでなんとなく解説しちゃいます。多分応用は効くはず。 まず大切なのは、こんなもの真面目に全部描画しないことです。たぶん、次のSWFを見ればその意味が分かると思います。 http://www.be-interactive.org/works/particleBase/Particle.html つまり、四分円の分だけパーティクル(ドット)を描画して、applyFilterでグローをかけて、あとはこの四分円を回転させながらコピーすることで円を作るのです。これだけで、一気にバーティクルの量が四倍に!! というわけで、25,000描画していると言いましたが、実際には1/4の6,400ぐらい分の計算量しかかかっていないというわけです。節約節約。 俺が作ったヤツは手抜きしてるのでつなぎ目が不自然だけど、これ

  • BeInteractive! [web creators 10月号に寄稿しました]

    明日発売のweb creators 10月号の巻末特集「Flashの知識とテクニックはゲームで学ぼう!Flashゲーム制作講座 」に寄稿しました。サンプルとして制作したタイピングゲーム「TTTTYPING」の制作手順を解説しています。応用編ということだったので、かなりぶっ飛ばして、しかも一人だけAS3で書いてます。 もちろんご購入頂いた方は全スクリプトをダウンロードして頂けますので、是非お買い求めくださいませ。というか、紙面の都合でかなり急ぎ足説明になってしまってるので、ソースを読んでもらうこと前提、みたいな感じになってます。その分ソースにはコメント二割増しで書いておきました。 分からないところがあればこのエントリのコメント欄でどうぞ。

  • BeInteractive! [知っていると得をするBitmapData.lock/unlockメソッド]

    なんか技術系の話題は久々? 今日ご紹介するのはBitmapData.lock/unlockメソッドですが、皆さんご存知でしょうか。ドキュメントを見ると、 この BitmapData オブジェクトが変更されたときに、BitmapData オブジェクトを参照するすべてのオブジェクト (たとえば Bitmap オブジェクト) が更新されないように、イメージをロックします。パフォーマンスを向上させるには、setPixel() メソッドまたは setPixel32() メソッドを何度も呼び出す前後に、このメソッドを unlock() メソッドとともに使用してください。 と書いてあります。 多分ほとんどの人がBitmapDataを表示するために、addChild(new Bitmap(bitmapData))とかやってると思いますが、実はsetPixelやsetPixelsをすると、画面の表示

  • BeInteractive! [Plashベータ公開です]

    ウノウ株式会社様よりお誘い頂き、一緒に開発させて頂いていた、ウノウの新サービス「Plash」がウノウラボにて日よりベータ公開です。 http://plash.jp/ Plashはオンラインゲームポータルで、以下のような特徴があります。 無料で遊べる ブラウザだけで遊べる(全部Flash!) ネットワーク対戦が出来る Wiiでも遊べる(インターネットチャンネル経由) 第一弾として、超定番ゲーム「大富豪」を作成しましたので、是非遊んでみて下さい。初XMLSocketだったんで開発も楽しかったです。 ちなみにデザインは、売れっ子FLASHerのカギさんにお願いしました。ありがとう!! Server: Masato Bito (Unoh Inc.) Flash: Yoshihiro Shindo (BeInteractive!) Design: a-key (locker

  • BeInteractive! [AVM2にAVM1のSWFを強引にロードする完全版]

    0x80は直してコミットした〜。 Completeイベントはこっちで確認した限りだと発行されてるなぁ。 次のコードで確認。 package { import flash.display.Sprite; import flash.display.Loader; import flash.net.URLRequest; import org.libspark.utils.ForcibleLoader; import flash.events.Event; import flash.display.LoaderInfo; public class SWF7toAVM2 extends Sprite { public function SWF7toAVM2() { var loader:Loader = new Loader(); l

  • BeInteractive! [Flex Builder + AS3Unit でテスト駆動型開発]

    何かの役に立つかもしれないので、今Sparkの開発で使ってるテスト駆動型開発の方法(と言っても全然たいしたことない)を書いておきます。普段Eclipseとか使わないので、もし「こんな便利な方法あるよ!」とかあったら是非教えてください。 例として、hogeというクラスライブラリを開発するとします。 適当な場所にプロジェクトディレクトリを作成します。例:C:\flex\projects\hoge 作成したディレクトリに、これから開発するクラスファイルを保存する src ディレクトリと、テストケースを保存する tests ディレクトリを作成します。C:\flex\projects\hoge\srcC:\flex\projects\hoge\tests Flex Builder を起動し、ActionScript Projectを作成します。プロジェクトディレクトリには dev ディレクト

  • 1