Thread(そうめん)× Away3D × Blenderで作成(僕がそうめんを使う理由的な)

August 22, 2008

Away3d
デモ表示

Away3DのColladaアニメーションと、先日参加した「そうめんワークショップ」のおさらいを兼ねて作成。

作る際に気がついたことなど次の順に書いときます。
1.Actionscript Thread Library(そうめん)
2.Away3D
3.Blender


Actionscript Thread Library(そうめん)
使ってみて感じたこと。

1.addEventListenerぜんぜん使わなくなった
具体的には1箇所だけ使った(スレッドの構成ちゃんとすればなくすこと可能)。

2.順序だててプログラミングできる
addEventListenerを使うと、ハンドラメソッドに飛んで、そこからつぎに飛んで、、、という感じにあっち行ってこっち行って、となり、そのうち頭もこんがらがっていく。
スレッド使うと、メインの処理にスレッドをだーっと並べておけば、それが処理の流れそのものになり、順序だててプログラミングするのが楽でした。

3.あとからソースをみたときにわかりやすい
2で述べたように処理の流れはスレッドの順序を見ればわかり、その内容は個々のスレッドクラスを見ればわかる。というわけで、わかりやすい。

4.わりととりかえしがつく
(遠い目をしながら)addEventListener時代はイベントの順序を変えたくなったときに、手間がかかった。
「そうめん」使えば、スレッドの順序をかえてやるだけでいい。
スレッドを順番に処理してくれるシリアルエグゼキュータ(SerialExecutor)を使っていれば、なお簡単。
次のソースだとaddThreadした順番に処理が行われるので、addThreadする順番を変えてやればいい。

var serialExec:SerialExecutor = new SerialExecutor();
serialExec.addThread(initThread);
serialExec.addThread(loaderThread);
serialExec.addThread(loadedThread);
serialExec.addThread(displayThread);
serialExec.addThread(away3dControlThread);
serialExec.start();

些細かもしれないけれど、おっ、これいいじゃんという使い道。

ローディング表示で、100%になったら「complete !」と出して、しばらくしてからそれを削除して、コンテンツを表示する場合。

次のように書くと、2秒たってからその次の処理に行く。そこでremoveChild。
これまではタイマー使ってとかしてました。

loading.gotoAndPlay("complete");
sleep(2 * 1000);

そうめんワークショップの懇親会で、Beintaractive !様とProgressionとの併用についてちらっと話したところ、「個々のページクラス内でスレッド使うといいかも」と言っていたけれど、確かに。


Away3Dの話
今回、rev.612で作成。
rev.613以降だとオブジェクトがそもそも表示されないという事態に(れいによってBlenderから書き出したdaeの問題だと思いますが)。

また、rev.612で次のようにColladaにマテリアルセットしたところ、うまく反映せず(前はうまくいった気がした)。

_loader = Collada.load("./dae/people.dae",{material:new MovieMaterial(material)});


Blenderの話
note.x様も書いている通り、アニメーション付きdaeを作成する際、注意することがある。

今回はそのうちのふたつを反映しています(時が解決してくれるのかな)。
1.ルートボーンを二つにする
2.ボーン名にドットが含まれないようにする(Arm.RならArm_Rにしとく)


それぞれ入手先
Actionscript Thread Library(そうめん)
Away3D
Blender


最後に
「そうめんワークショップ」行ってよかったと実感。
開発者の口から開発者の言葉で話を聞くことで、ドキュメントの裏側に触れられる気がする。
9月4日のProgressionイベントも行きたいところ。

さとなお.comに次の一文がある。
「社外の人間と飲め。社内の人間とばかり飲んでるヤツはバカと思え」
世に広めたい言葉だと思った。

僕はと言うと、今年後半戦、勉強会やワークショップは都合つく限り行きたい。

カテゴリー: 


タグ: 


Posted by scratchbrain at August 22, 2008 7:59 PM ブックマークに追加する

Trackback

Trackback URL for this entry:

Post a Comment


検索

このブログを検索

サイトコンセプト

当ブログは、レディオヘッド、司馬遼太郎作品の読書感想、Flash、Actionscriptの技術メモ・サンプルソース、日記・雑感などを公開しています。
[SCRATCHBRAIN プロフィール]
[アートワーク]
[Twitter]

リンク

  • scratchbrain.netホーム
  • アートワーク
  • scratchbrainプロフィール
  • 音楽ブログ
  • スクラップブック
  • 実験プロジェクト
  • こんなライヴに行きました

広告

最近のエントリー

カテゴリー

タグクラウド

全てのエントリー一覧

RSSフィード

月別アーカイブ

powered by Movable Type Pro 4.23-ja

hosted by