Entries of flash

flashでの低品質ブラーフィルタについてメモ

Dゲームファンのための「ヴァルキリープロファイル2」グラフィックス講座 次世代機を睨んだユニバーサル設計エンジンの秘密に迫る

このガウシアン・フィルタを1回かけただけでは十分なボケというかあふれ出しが表現できない。となると、複数回、フィルタ径を変えてガウシアン・フィルタを実行しなければならないがそれでは負荷が高すぎる。そこで、元ぶんか社Gamesの川瀬正樹氏が考案したMGFが使われることが多く、VP2でもこの技法を利用している。

 川瀬式MGFでは、フレーム中の高輝度部を複数の異なる低解像度バッファに抽出して、これに対してガウシアン・フィルタを適用し、バイリニアフィルタで拡大して大きさを揃えて合成する方法をとる。

flashのブラーフィルタの品質低ってのは、こういう風にやってるのかね。
あるいは違う方法をとっているなら、このアプローチでブラーフィルタを高速化することができそうなメモ。

amaznode製作裏話

やっとこさ、ベータ公開にこぎつけたamaznodeの裏話。

Flash9襲来にそなえて、Flex2と9のプレビュー版使ってフルActionScript3で実装してみたのですが、予想外に時間がかかっちまいました。確かAdobeのセミナーの次の日から作り出したけど、スプリングエンジン、アマゾンライブラリ、基本コンポーネント、コマンドクラス、似非トゥイーンライブラリ他で約2ヶ月。基本AS2からの移植メインにしては時間かけ過ぎ・・・

AS3は神速の処理速度はよいのですが、なれてないせいかアニメーションやグラフィックの制御、リスナーの管理が結構大変でした。アニメーション系のAS3ライブラリがそろうまで、このサイズのコンテンツは当分作りたくないな・・・というのが正直な感想。

とりあえず今後の課題。

・詳細画面の演出をもっとラブリーに。
・詳細画面表示から関連商品へ移動
・商品の移動ロック、アンロック、非表示等を右クリック(?)あたりに
・画面下に、リアルタイムの1行ヘルプ。
・もうちょっとなんとかカッコヨク

そんな感じ。

Amazon関連商品検索 Amaznode を作ってみた

Amaznodeがようやっと動くレベルに

AmaznodeはAmazon商品の「この商品を買ってる人は・・・」の再起検索エンジンです。
くわしい使い方はこちらをご覧くださいませ。

まだまだ直すべきところは多いですが、自分締め切りがきたので一旦アップしてみた。就職活動や、セミナー、WebDesigningのインタビューとかデモ見せはしながらも、はや2年近く放置プレイでしたが、なんとかActionScript3でフルリビルドしてでっちあげました。

Amaznodeはサーチエンジン兼、アフィリエイトツール兼、市場調査ツールなわけですが、百聞は一見にしかずということで、色々な単語をチェックしてみるテスト。

WEB2.0
この単語がマーケッティング用語であることが如実に出ている検索結果。

ajax
Ajax 実装の為の基礎テクニックはおかげさまで第二版が出るようです。

自分の趣味
最近は本を読むしか趣味がない悲しい男ですが、好きな作者とか検索してみる。

京極夏彦
京極フリークと森フリークはある程度共有されてるみたいですね。まぁ理文ミステリの両翼と呼ばれてるのだから、妥当なところか。

Flash
いちおう僕の本も出てる。

グインサーガ
ギネスブック更新中の世界最長国産ファンタジー。109巻まであるだけあって読者はそれしか買ってない様子。

萌え業界
21世紀の日本をささえる産業らしいので、色々試してみたなかで、面白かったのをいくつか紹介。

萌え
美少女、ボーイズラブ、アカデミックという三国史状態。2年前の検索結果と比べると、「萌え」という言葉が一般に膾炙しつつあるのがわかります。2年前はというと、萌えは純愛だという愛好者の主張に反して、エロコンテンツばっかでかなりドン引き状態でした。

ハルヒ
噂のWEB2.0的プロモなアニメも、実は既存のオタク市場の外にはまったくリーチしていない模様。

フィギュア
コレクター的消費層の裏に、人体構造本や解剖医学書などを買いあさる、物凄い求道者の存在するようです。

なんか、色々検索して面白い市場分析レポートとか書いた人がいたら是非トラバくださいませ。

flashの処理速度を2倍ぐらいにブーストする仮説

flashの処理速度を2倍(自分体感レベル的)にブーストするには、右クリックで描画クォリティーをLOWにすればいい。しかし残念ながら、このとき問題点として全てのシェイプとテキストにアンチエイリアスがかからなくなってしまう。

で、昨日tats君と話してて思いついた。

ディフォルトで描画クォリティーをLOWにしておいて、テキストを更新にしたタイミングで _quality = “BEST”に変更する。そして即座にBitmapDataクラスを用いてアンチエイリアスつきテキストをdrawして画像化。そしてすぐに_quality=”LOW”に戻す。
画面の最終更新が行われるのは常にフレーム処理の最後であるので、その前に一瞬だけ_qualityを変更してもそれは描画の負荷にはならない。一方でBitmap.drawの描画は画面に表示されるものではなく、メモリ上での再レンダリングであるのでその質は関数実行時の_qualityの値に依存する。

この一連の操作を1フレーム以内で行えば、理論上は画面に表示される画像のクオリティは”LOW”のままで、テキスト画像は、品質「最高」のアンチエイリアスを保持したままビットマップ化できる・・・はず。

これでクォリティ「低」でも選択的アンチエイリアスがかけられて、かなりスピードウプ・・・するんじゃないかなぁ。
まだ試してないけど、多分うまくいくと思う。

Soundクラスにマスターボリュームを実装する

ミキサーみたいに、Soundクラスにマスターボリュームがあって、全ての音を等間隔でフェイドアウトできるとステキだな、と思って書いてみた。 target指定しないSoundで0にすると、こんど音戻したときに全ての音が100とかになってしまって、音のバランスがぶっ壊れるのが微妙。

class SoundExt extends Sound{
private static var masterVolume:Number = 100
private var __volume:Number = 100;

public function setVolume( val ){
__volume = val;
super.setVolume( __volume * masterVolume / 100)
}

public function getVolume():Number{
return __volume
}
}

こんな風にすると、マスターボリュームを変更すると全ての音が等しい比率で増減できる。実際には、Soundインスタンス作成時に自身をリスナ登録して、masterVolumeのsetterで、全てのサウンドのボリュームを更新しないといけないのだけど、おおまかこんな感じ。

flash9.ocx add-on errorの怪

FlashPlayer9入れてから、 flash9.ocx add-on error なるファックオフなエラーで、ブラウザが落ちる率が大上昇してるわけだけど。原因が超謎。

google先生で聞くと、みんな困ってるらしいのだけど、具体的な発生条件がまったく特定できないらしい。とりあえず巷にある説をまとめると・・・

gotoAndStopを使用すると超レア確立で落ちる( as3限定か?)
Dynamic TextFieldで、変数と表示を結び付けてると危険
loadMovie, unloadMovieをしまくってると危険
・stop()したら危険(ソース紛失)
XHTMLのエンコーディングやHTMLのDocTypeが原因?

関連?
ExternalInterface上のJavascriptコールから、html上のswfを削除するとクラッシュ

などなど、比較的あたりまえというかどーでもいいことでクラッシュするらしい。ちなみに、Dynamic TextField説は複数のサイトで散見してるので、こいつが戦犯なのかもしんない。

とりあえず、フレームの移動とかでMCやTextFieldができたり消えたりする、超一瞬のタイミングに、なんかの処理が割り込むと死ぬって雰囲気。サイトによって発生率は天と地ほども違うので、なにかしら地雷になる処理があることは確かなんだけど・・・ 誰か原因知ってるとか再現率100%コードとか持ってる人いませんでしょうか。

ちなみに、del.ico.usでflash, crashで検索すると某ゲームばかり引っかかって困る。

AS3をAS2っぽく使うメモ

あきらかに設計者の意図を踏みにじることになるけど、主要クラスにdynamic 宣言をつけてDynamic○○というサブクラスを作ってしまえば、厳格さを回避してAS2っぽく弄れる。

っていうか、アニメーション制御するのウザすぎ。

録画型のお絵かき掲示板noughts.jp

http://noughts.jp

いつかやりたいなぁと思ってたサービスが、いつのまにか他の人にかなりハイレベルで作られてた。
Flashによる、録画型お絵かき掲示板。

このサービスで面白いのは、絵が上手い人は実際にどういう風に書いてるのか?というのが見えるところだなぁと。やっぱ、上手い人ってのは1箇所を一気に仕上げないで、巡回しながら書いてくのだなぁとか。んで、修正を恐れないでバンバンやるとか。

絵をやりたい人とかって、こういうコミュニティがスゴイ勉強になるんじゃないかと。

<追記>
これ、マルチユーザーサーバー使ってるのか、今まさにリアルタイムに書いている人の絵も見れるのね。すっげぇぇぇ。

FlashでMaxMSPやQuartzComposerっぽいことをする、FlashFilterLab

FlashFilterLab
カシモンドから転載。

パッチをつなげ合わせて、ビジュアルエフェクトを構築するflashアプリ。
前々から作りたいなぁと思ってたのを、見事にやってくれてます。

画面左の StartLab から体験ができます。

アプリがどうとか以前に、適当にパッチを組み合わせていると、「Flashでこんな表現できたんだ!!」みたいなものがポコポコと生まれてきて、インスピレーションがブリブリ沸いてきます。

Weave Toshiスゴス

はてブ話ばっかなので、はてブっぽくない内容も。

Weave Toshiの新バージョンスゴス(Day Dreamって文字のあたりをクリック)。
こういう退廃的なイメージ大好き。
UIキモチイイ。