Entries of flash

Proxyクラスの新しい使い方を考えた

SmartDelegate.as

as3ライブラリの中で、「なんで存在するの?」とか、「ウンコ」とか、「DisplayObject継承できないから戦力外」とか不遇の扱いを受けまくるProxyクラスの活気的な使い方を考えてみた。

よくわからんが心が折れてる

最近よくわからんけど、flash/actionscriptに対する気持ちが物凄い勢いで折れてる。

それは多分ここ半年ぐらい、asをコーディングをすること自体が純粋な作業になってしまってるかもしれない。
なんか新しい発見がない。

弊社の作品展のお知らせ

銀座グラフィックギャラリー(ggg)および、大阪dddにて、本日より8月28日まで、弊社社長愉快な仲間達による作品展が開催されます。

webにあるものwebで見れない実験作やカスタムバージョン、新作旧作色々とりそろえてます。よろしかったら是非是非お越しくださいまし。

1920 * 1080 の巨大縦長FHDモニタは意外と普段と違う感覚で楽しいっす。

pv3d と FlashPlayer10の雑感

be-interactive FlashPlayer10の登場でPapervision3Dオワタ\(^o^)/は間違い

うん、PV3Dオワタ!!とか思ってたけど、FlashPlayer10触ってみたら全然終わってなかった。逆にFIve3Dの立ち位置が大ピンチ。

一方PV3dはというとPixelBenderを利用して3次元の行列計算をFlash Playerの外側に出すことで、大幅なスピードアップが期待できそう。というかPixelBenderが10の限界突破の鍵だと思う直感的に。

まだ使い道を完全には思いついてないけど、音の生成から画像認識、単純な総当り処理まで、負荷の高い作業はデータをビットマップ化してPixelBenderに突っ込んじまえという思想が流行しそうだ。

あとボーンとかインバースキネマティクスの導入で、voo-doo-dollsは完全にオワタ\(^o^)/

Google Maps API for flash雑感

Google Maps APIのAS3実装が公開されたので、サクっと触ってみた感想。

APIそのものはかなりよくできているのですが…
重い。死ぬほど重い。クラスがFlexフレームワーク上で動作させることを前提としているっぽいのか、やたらに重いです。特にズーム時の処理。ズームする前段階で古いマップチップはまとめてビットマップ化とかしてほしかった。で、ちょっと気になった点が。

FlashでHDRレンダリングのメモ

「Flashのアルファブレンディングのイヤな仕様と回避策」の解決模索で副次的に生まれてきたアイデア。

Flashのアルファブレンディングのイヤな仕様と回避策

FlashのBitmapData描画で、アルファ値の計算に色々問題があるのでメモ。

色1の上に色2をアルファありで描画した場合、新しい色は以下の式で求められる。

色 = int((色2-色1)*alpha + 色1)

Bitmap.DrawをはじめとするFlashの内部処理はどうやらこの式で求められている。だが、この式には大きな問題点がある。

Flashは求められる技術が多すぎ!! な雑感

Flashは求められる技術が多すぎ!!

こういう議論が、ニュー速で比較的まじめに議論されてのがちょっと新鮮。なぜにニュー速しかもわりと専門的。議論されてるような認識がコモディティ化してきたってことなんかな。
けど、この総合格闘技っぷりは、これからやる人にはどうにもなんないよなぁ。

HELLO, WORLD! SoftBank をラウンチしました

helloworldsb.jpg

阿部さんとやったお仕事、HELLO, WORLD! Softbankをラウンチしました。 僕は実装担当。
一緒に大きなのやったのって、何気にneovision.jp以来でちょうど2年ぶり。

やたら人がいっぱい出てくるコンテンツで、いったい何人いるのか僕も正確には把握していないぐらいっす(一説には900人ぐらい?)。 フルスクリーンモードにして、見ていると楽しいです。極まれにシュールなフォーメーションや、キャラがでておもしろい。

ボーっと流しっぱなしでお楽しみください。

AS3でガベージコレクションを見張る画期的方法メモ

AS3のメモリリークはファックだぜぇ!!と嘆いている全国35人(含む自分)ぐらいのみなさまコンニチハ。

現行案件でメモリリーク地獄にまきこまれて、どうにかこうにか解決策を考えてたら、以下のようなことに気がついた。

弱参照のDictionaryのオブジェクトキーを利用して、対象のオブジェクトがガベッジコレクションされたかどうかを見張ることができるんじゃね??

つまりTimerでDictionaryを見張ってキーが消滅した瞬間が、そのままそのキーとして使われていたオブジェクトがガベッジコレクションされたタイミングなわけです。グローバルな弱参照Dictionaryを作ってその挙動を見張れば、onGarbageCollection イベントを発行できるし、DictionaryのキーをダンプすればGCされそこねたオブジェクトの一覧が取得できるんじゃないかと。

うん、なんだか結構画期的な概念を唱えてる気がする。
でも自分はすることいっぱいなので、検証と実装は他のASジャンキーにまかせるぜ!!