カテゴリー
未分類

大人の科学

バタバタしていて詳しく読めてないですけど、wonderflと連動しているのだそうです。詳しくはこちらをどーぞ。
大人の科学 x wonderfl – wonderflが釣り堀に!魚釣りゲームをつくろう
そういや、堀来月潰れるから、明日とかまた行きたいんだけどな。
それどころじゃないか・・・。ムハ

カテゴリー
未分類

Height Problems in fl.controls.*

プロトプやらスケルトンを急ぎで作りたいときに、まれにfl.controls系を使いますが、配置の際に高さのがでてきて、いつもてバタバタするのでメモ。
fl.controls系でテキスト(textArea)を内包しているコンポーネントは高さが100pxになる。変数で配置して行く場合など非常にうっとおしいことになる。単体でのheightはoverrideされて見た目の高さを取得できるが、親DisplayObjectのheightは100px。ちなみにgetRectだと単体でも100になる。これはoverrideされていないらしい。(半端だ)
これの原因は大概コンポーネントの中に含まれるtextAreaで、autoSizeがカマされてない素の状態でaddChildされているのかheight=100である。fl.controls.TextInputだと以下のような感じで調整してやれば最適な高さになる。

ただfl.controls.ComboBoxとかだと階層化していてめんどくさいので、

な感じでやっちゃう。
全部試したことがないので、NGなコンポーネントもあるかも知れないけど。
ということでメモ

カテゴリー
Interactive

A、B、・・・Cである・・・

Beyond Interaction ―メディアアートのためのopenFrameworksプログラミング入門

は、インタラクションの現場で現在最も注目されている制作環境、「」の世界初の解説書です。 openFrameworksという++のフレームワークを使用して、プログラミングの初歩から高度な応用まで、具体的なサンプルをしながら実践的に学んでいくことを目的にしています。プログラミングののない初心者から、メディアアートに興味を持ち自分で何かを作りたいと考えている方、 など他の環境は経験しているがより強力なプログラミング環境を探し求めている方まで、多くの方にとって有益な情報を提供しています。

来週発売だそうです。
ちなみに最初に覚えた言語はFortran。
覚えたいものが多くて
おじいさんにはしんどいですね。

カテゴリー
未分類

全日本バーベイタム選手権 | Verbatim Championship


UNOのもそうですが、こういう対戦ものにはまります。
城戸さん、カイブツさん、かんたさん関係ということです。
がどうこうというよりもゲームとして面白いです。
ということでパーツを貼ってみる。

カテゴリー
未分類

32 ビットを超えたときのuintの挙動

32bitを超えた値だと、超過部分が-1に変化してしまう。
つまりこんな挙動になる。

結果

0 @ 4294967295
1 @ 99
2 @ 98
3 @ 198
4 @ 197
finish 197

ややこしいね。
例えば

とすると

0 @ 4294967205
1 @
2 @ 8
3 @ 108
4 @ 107
finish 107

こーなる。
ああ面倒くさい。
ちなみにNumberは53 ビットまで使用可能なので、Numberで計算するとこんな感じになる。

最後にuintに変換した部分は、また超過部分が-1で演算されるので答えは同じになってしまうけど・・。

0 @ 4294967205
1 @ 4294967305
2 @ 8589934600
3 @ 8589934700
4 @ 12884901995
finish 12884901995
to uint = 107

カテゴリー
Develop 未分類

Flash希望機能

再コンパイル無しでのプレビュー機能。
すげーほしい。
ほしくね?
オラめっさ欲しいわ

カテゴリー
Develop 未分類

メモ

いつもるのでメモ。
setAdvancedAntialiasingTable (TextRenderer.setAdvancedAntialiasingTable メソッド)
CSMSettings – ActionScript 3.0 言語およびコンポーネントリファレンス
Adobe ActionScript 3.0 * 高度なテキストレンダリング

カテゴリー
Develop

SecurityDomain周り

SecurityDomainで諸々メモ。(まだ間違っている部分があるかもしれない)
条件
ポリシーファイルを読込先サーバに配置できない
として、どーやってそのサーバに配置されているソースを読み込むか?ということでProxyのような働きをするswfを用意し、それを介して読込先サーバのリソースにしてみるようなかんじ。
・Security.allowDoaminの設定。
Security.allowDoamin(“*”)でも良いが、危険なので

な感じで動的に設定した方がよさげ。
・LoaderContextの設定
checkPolicyFile = false;
securityDomain =;
これらを設定するとcrossdomain.を参照し、その時点で停止。
ApplicationDoaminの設定は問題ないが、Security.allowDoamin前に確認されるからか、適応されないっぽい。まぁLoaderContext無しで動くようにする必要がある。
・子swf内
取得するにはdispatchを受け付けるように、親にもSecurity.allowDoaminが必要(当たり前ですが)
・子swfでのクラス定義のタイミング
ポリシーファイルが定義されている場合は、子swfの変数として
var a:hoge = new Hoge()
見たいにして定着させるが、Security.allowDoaminで開放する場合には、解放後定義しないと参照できない。つまりコンストラクタで

とした後に
new Hoge();
等と空打ちして焼き付ける。
・子swfのクラスの取得
SecurityDomainが同じ場合は、ApplicationDoamin.currentDoamin.getDefinitionでクラスを取得できるが、前述の通りSecurityDomainが異なるためApplicationDoamin.currentDoaminに子swfが含まれていない。このため

みたいに取得する。ただし、これを親クラス側で変数に代入して流用は可能。

ただし型指定をするとになる。
簡単なのは子クラスを格納するクラスを作って、その中にStaticで格納するのが楽。
・Loader系
子swfで定義されたLoader拡張クラスを、親swfでgetDefinitionして取得した後は、親でインスタンス化しても使用可能。ただしcontnt等セキュリティエラーに抵当するプロパティもある。例えばBitmapDataを取得したい場合は、子swfに含まれるLoader拡張クラスの中で、BitmapData化して引き渡すなどの処理が必要。

こんなかんじ?このBtimapは親で自由に使える。Sprite系なども基本newしてしまえば自由に使えるが、SecurityDomainを超えた要素はやはりセキュリティエラーになるので注意。(この辺ローカルでは確認できないので、サーバ上で確認するしかないのだけど・・、そこが非常に面倒)
ただリダイレクト系の分散負荷のシステムだと、結局このproxySWFとそこから呼ばれるソースのIPがまた変わってしまうという延々とループな感じの挙動にってしまう。やらswfやらが対であればバイナリ化してLoadしたほうが圧倒的に楽。ただFLVの場合が・・・・汗
ということでとりあえずメモ。

カテゴリー
Develop 未分類

Flash今昔

結局最的には、行ごとにTraceをいて、どこでバグが起きているのか?を書き出している。
なら、name指定すれば良いのは分かっているが、全部のコマンドにnameを定するのは正直しんどい。なんか勝手にそのASの何行目のコマンドだよ!とか取得して埋め込めないものだろうか?とか書いてみる。
ゴメンナサイ、ゴメンナサイ。
地道にります。

カテゴリー
Develop

AS3での埋め込みフォントの共有について:其の伍[RSLの先読み対応 with Progression](多分解決)

さて、現実的に使うためにどーするか?ということを考えてみます。特にで・・・。
点としては
1)共有の読み込みがドキュメントのコンストラクタ前に発動してしまう。
2)ProgressionでRSLを配置するとCastDocumentの”_onInit”がロストしてしまう。
この2点をなんとか解決したいと思います。
2)はloaderInfoの”.COMPLETE”がRSLが存在すると発動しないというのが起因しているかと思います。(何故なのか?は不明。そもそもRSLのローディングができないのでどーしていいのやら)
ということで、コチラは無理やり”CastDocument”のコンストラクタに

として、_onInitに連結します。(override出来ないから)
これに関しては諸調べていますが、問題が発生する可能性があるので、暫定的な処理とさせてください。実際にこの手法を用いる際にはリスクがあることをご理解の上、実装してください。(今のところ問題が発生するものとしないものの2つのパターンがあることは確認していますが、明確な切り分けは出来ていません。)

一応_onInitの重複発動(Preloader経由だと”Event.COMPLETE”が発動するので)防止のために、”onInit”の最初に以下の一文を入れておく。