Entries of flash

Full Flashの実験系サイトが最近ない理由

最近、AS2やAS3で作ったスケッチをのせるフルフラッシュのサイトをめっきり見なくなった。
自分も作ろうとしたけど、何度も挫折して結局やらなくなった。

そこらへんには時代とかモチベ以上に、強固なテクニカルの壁があるなぁと思ったのでメモ。

AS2のコンテンツと、AS3のコンテンツを同時に扱う方法が難しい
両者アクセスできないから、過去の資産をうまく埋め込んだり、同じ文脈で表示するのがムズイ。

AS3ではLoaderで呼び出されるコンテンツには、それを考慮した設計をする必要がある
AS3で作ったものをLoaderから呼び出した場合、インスタンス化のタイミングでstageを参照できない。だから普通に作ったものをLoaderから呼ぶと、軒並み動かない。それように作らないとならない。

AS3では読み込んだコンテンツを終了させる統一方法を考える必要
AS3のコンテンツはアンロードして終わりとかやると、イベントリスナ等、バキバキと色々な参照が残りまくる。よってAS3コンテンツには統一してdisposeする機構が必要になるんだけど、過去の作品にさかのぼってそういうの作るのってアレじゃね?

AS2でもOOPでは、深刻なプロトタイプ汚染
LoadMovieでコンテンツをロードする度に、グローバルにクラスオブジェクトが作られたり、プロトタイプが汚染されてアンロードしてもこるので、作品をロードすればするほど破綻していく。

フルスクリーン中はキーがとれない
フィッシング対策だと思うんだけどゲーム系は全滅だし、なんかアラートとかで対応して欲しいなぁ。

フルスクリーンがキーか、ボタンドリブンでしか起動しない
これも色々と問題が・・・

というわけで、フルスクリーン、フルフラッシュで実験サイトを作ろうとすると、以上もろもろのテクニカルな難題を全て解決しなければならない。うーん、ムズイ。 自力じゃ解決できなさそうだ。

誰かいい案もってないでしょうか

Flashの効率のよいデバッグ小技

前に紹介した気もするけど、最近やっぱり便利と実感してる技。

・まずStageでキーイベントのリスナ登録して取得する。
・イベントハンドラ内にブレークポイントを作っておく。

こうすると、キーを押せば任意のタイミングでいつでもデバッガを開ける。 イベントハンドラ内にModel, View, Controllerの参照でも作っとけば、コンテンツのステートをいつでも見ることができていい感じ。

FireBug経由やらクリップボード経由やら色々試したけど、コレが一番作業効率いい気がする。

自動カーニングエンジンの模索

とりあえず、AS3によるオートカーニングエンジンの雛形を作ってみた。

オートカーニングエンジン1号

↑はとりあえず、平仮名と片仮名だけいれたテキストフィールドで入力可能なサンプル。
どんなもんでしょう?

なんとなく機能しているよね。 これをベタ組みからの進歩とみなすか、中途半端なカーニングならベタ組みのほうがいいと考えるかは人によると思う。自分的には、タイトルレベルだったら多少アレでも字詰めされてるほうがいい気がする。

まぁ実際には、精度の問題はカーニングペアをひたすら入力すれば解決する。50音の二乗は5000組ぐらいだけど、「 *ト 」といった感じに、ワイルドカードでのカーニング指定も対応したので、クリティカルな文字詰めだけに限定すれば1000個も設定すればOKなはず。中国とかに外注したいけど、中国人は日本語の字詰めできないだろうしなぁ・・・ 誰がカーニング設定するのかが最大の問題。

あと最近思うのだけど、リバコンしてコードパクルぐらいなら普通に情報交換しようぜ、とか書いてみるテスト。
さすがに眠いのでもう寝る。

自動カーニングエンジンについてメモ

ダイナミックテキストを表示するとき、「ト」の字の前後の隙間がキモい。

別に本文程度ならまぁ妥協できるけど、タイトルとかでの隙間をどうにかしたい。でもテキストは外部ファイルから読み込んでの動的表示なので1文字づつカーニングするのは無理。

こういうダイナミックテキストの字間をアクションスクリプトで、オートカーニングすることはできないだろうか?

具体的には

KerningManager.addPair(“*ト”, -0.1)
KerningManager.addPair(“*ぁ”, -0.1)
KerningManager.addPair(“ぁ*”, -0.15)
KerningManager.addPair(“ティ”, -0.1);

といった具合に、主要カーニングペアをXMLとかで定義し、

KerninrManager.kerning( myTextField )

とかで、一気にカーニングを注入してくれるというもの。
これが可能になると、日本語フォントいろいろな可能性がひろがりまくりんぐなわけですが。

こういうの要望ってないんすかね。俺は今リアルタイムにバリバリ必要なんですが。

AS3コーディングスタンダード

AS3コーディングスタンダード規

全員が自分の趣味でアレコレいうと収拾つかなくなるから、AS3の書き方はもうみんなこれ1つで統一しようぜ。
些細なオプティマイズより、全員おんなじ記法のほうがトータルで生産性いいべさ。

AS3の状態遷移フレームワークProgression2.0がリリース

niumのTakaさんによる、超力作フレームワーク。 Progression2.0がついにリリース。

ちなみに、KatamariはProgression製で、しかも作者はSaqooshaさんらしい。スゲェ。

とりあえず今日家帰ってから1~2時間ぐらい触ったんだけど、さくさくとサイトの骨格作れた。たった1時間でページ遷移の制御が完成してて、あとは各ページ作りこむだけっすよ。

4月に入ったらprogressionでfladdictちゃんと作り直そうかな。

Tweener拡張で、MovieClipをMatrixで超変形をできるようにした

先日のTweener拡張、MatrixShortcut.as をさらに改造しました。

Tweenerの初期化後に、MatrixShortcuts.init() を呼ぶと、Tweenerにスペシャルプロパティが追加されます。

_matrix_a
transform.matrix.a をトゥイーンする。
_matrix_b
transform.matrix.b をトゥイーンする。
_matrix_c
transform.matrix.c をトゥイーンする。
_matrix_d
transform.matrix.d をトゥイーンする。
_matrix_tx
transform.matrix.tx をトゥイーンする。
_matrix_ty
transform.matrix.ty をトゥイーンする。
_matrix
transform.matrixをまとめてトゥイーンする。

今回はさらに、俺至上便利すぎる超新機能を追加。あらゆる階層のムービークリップを親のスケールや回転、位置を無視して、絶対座標系で移動できるようになった。

これでどんなに複雑なMC構造していても、簡単に右上に移動とかセンタリング等ができます。

Tweener拡張で、MovieClipをMatrixで変形をできるようにした。

最近、なんか物凄いトリッキーな変形とかを要求されまくることが多くて困ってます。
んなわけで拡張プラグインを書いてDisplayObjectのMatrix変形をTweenerで行えるようにしました。
このプラグインを使うと、TweenerでMovieClipのMatrix変形ができます。

MatrixShortcuts.as

MatrixShortcuts.init();

Tweener.addTween( myMovieClip, {
time:1,
_matrix_a : 1,
_matrix_b : 0,
_matrix_c : 0,
_matrix_d : 2,
_matrix_tx: 100,
_matrix_ty: 100
});

これで最早どんな変形もTweenerで可能です。
無敵。

近日中に_matrix プロパティで直接Matrixオブジェクトもぶち込めるようにする予定。

TextFieldを可読性重視設定にした場合、BitmapData.drawできない

なかなか嫌なバグを発見したのでメモ。

FlashのTextFieldのアンチエイリアス設定を、「可読性優先」にした場合、テキストフィールドがBitmapData.drawで描画されなくなる。 今日は表示されないテキストフィールド相手に格闘してた。

とりあえずTextFieldをインチキDisplayObjectの中に放り込んで、そのDisplayObjectを描画すれば回避できるっぽい。しかしメンドイ。普段、可読性優先の設定なんて使ったことなかったから今まで気づかなかった。

MoMAの特別展サイト Design and the Elastic Mindをラウンチしました

design_and_the_elasticmind.jpg

MoMA: Design and the Elastic Mind

ニューヨーク近代美術館のエキシビジョン、Design and the Elastic Mindの特設サイトをラウンチしました。イノベーションやテクノロジを日常に落とし込む為の、デザインと柔軟なアイデアに関するエキシビジョンです。

本場ニューヨーカー坂井さんと似非ロンドンっ子の僕という、THA外貨獲得チーム(嘘)の初海外案件。Gyreのインスタ以来久しぶりのガッツリプロジェクトでした。

なんとなくポコポコクリックしてるだけで、ビューっと色々閲覧できる!ってのがコンセプトで、エキシビジョンの展示物を様々な文脈から横断的するサイトです。。500個くらいある作品の文脈を示す、ってことで新しいタグの見せ方(?)みたいのの提案。 社内コンペで坂井さん案と僕案が悪魔合成されて生まれました。僕バージョンの初期案のビジュアルは完全消滅したけど、操作感と移動性は初期コンセプトのモノを引き継げて結構満足。