
-------- Start logging at 10/01/23 15:04:03
15:04 切断しました

-------- Start logging at 10/01/23 15:06:05
15:06 入室しました
15:06 *loggers Mode +sn 
19:52 *Moloheiya Join (~molo@cagoy02-172.kcn.ne.jp)
19:53 *Moloheiya Quit ("See you...")
21:39 *Moloheiya Join (~molo@cagoy02-172.kcn.ne.jp)
21:45 *pippikapi- Join (~pippikapi@softbank126114001020.bbtec.net)
21:45 *Seacolor Join (~seacolor@d121.FtokyoFL42.vectant.ne.jp)
21:45 pippikapi- > こんばんは、せっかくなので見学してます＾＾
21:46 Moloheiya > こんばんは〜
21:46 Seacolor > こんばんわ。　忘れないようにあらかじめLimeChatを起動しておきました
21:47 Moloheiya > ありがとうございます。MineAPさんとb2oxさんには＠飛ばしておこう
21:48 *MineAP Join (~mineap@softbank126081106032.bbtec.net)
21:49 *b2ox Join (~b2ox@z198.220-213-81.ppp.wakwak.ne.jp)
21:49 Moloheiya > こんばんはーｗ
21:49 b2ox > こばはー
21:51 Moloheiya > 始まるまで用事してきますー
22:01 *rankinglo Join (~rankinglo@ntoska360002.oska.nt.ftth4.ppp.infoweb.ne.jp)
22:02 Moloheiya > こんばんわ〜
22:02 rankinglo > こんばんはー
22:02 b2ox > こんばんわー
22:02 Seacolor > 改めまして今晩は
22:02 Moloheiya > こんばんわ
22:02 Moloheiya > では10時になりましたので始めますね。今日もよろしくお願いします。
22:02 MineAP > よろしくお願いします。
22:04 Moloheiya > まずこれからじゃんけんゲームを作っていくことになるのですが、主導をSeacolorさんにお願いしています。それについての打ち合わせと要点確認などを行っていきます
22:04 Seacolor > はい
22:05 Moloheiya > 先日、個人チャットでSeacolorさんとお話ししていたんですけども、その時モジュールについてお話していまして
22:06 Moloheiya > swfをロードして表示するという形ですね
22:08 Moloheiya > 細かい部分の指示についてはこの後、Seacolorさんの指導をお願いしたいのですが大丈夫でしょうか？
22:08 Seacolor > 指導の内容に依りますので、大丈夫と断言できる自信が今ひとつ
22:10 Moloheiya > 各担当がどういうプログラムを書けばいいのか分かりませんので、それを教えて頂ければと
22:10 Moloheiya > 仕様書が必要であるとか
22:10 Seacolor > ふむふむ
22:11 Moloheiya > 多人数での開発経験がありませんのでｗ
22:11 Moloheiya > どうすれば円滑に出来るかなーと
22:12 Seacolor > ぶっちゃけ、円滑さにこだわらない方が良いと思いますよ。　勢いでいっちゃった方が良いかと
22:12 Moloheiya > なるほどー
22:13 Seacolor > 仕事では問題ですが、私事ですからね
22:13 Moloheiya > いつでも各担当に、すぐ質問出来るような環境が必要かもですね
22:14 Seacolor > 私はtwitterかwassrでreplyをいただければ必ず見ます
22:14 Moloheiya > なるほど。Twitter発プロジェクトですし、いいですね。ある意味アピールにもなるし
22:15 Seacolor > 不特定多数向けは#vocaloplusのハッシュタグで流すとか
22:15 Moloheiya > なるほど
22:15 Seacolor > メーリングリストでも良いですけれどね
22:16 Moloheiya > 了解です
22:16 b2ox > 外に出したくないときはMLかな。それ以外はtwitterでOKだと思う
22:17 Moloheiya > わかりましたー
22:17 Moloheiya > 次にb2oxさんの3Dモジュールの進捗よろしいですか？
22:17 b2ox > はい
22:19 b2ox > 基本的な部分は前回から特に変わってはないですね
22:19 Moloheiya > モーションって、どういう風に読み込むようになってます？
22:19 b2ox > どういう風にと言うと？
22:21 Moloheiya > えっとvmdをロードする形になってると思うんですけど
22:21 Moloheiya > vmdを切り替えてモーションを変えたりとかは、もう可能ですかね？
22:22 b2ox > 一応可能なように作ってますけど試してないな。そういえばw
22:23 Moloheiya > 切り替えられるなら、じゃんけんの動作をスクリプトで制御することも出来るかと思いましてｗ
22:25 Moloheiya > 最終的には動作はスクリプトで全て制御することになるので
22:26 Moloheiya > モーション名を叩いて、動きを変えられるようになるといいかもですね
22:27 b2ox > vmdを読み込むときにモーション名を付けてモーション登録して、changeMotionでそのモーションに切り替えってなかんじの実装にしてます
22:27 Moloheiya > なるほど、わかりましたー
22:28 Moloheiya > またここから音声やセリフなどのモジュールも入れていかないといけないわけですが
22:29 Moloheiya > モジュールの作り方が、ただpublicな関数を用意しておくだけで大丈夫なのかとかが少し分かりませんので
22:29 Moloheiya > その辺り、どういうものを用意すればモジュールとして機能するかをSeacolorさんに教えてもらいたいのですが・・・
22:30 Seacolor > はい、出番ですね
22:30 Moloheiya > よろしくお願いしますｗ
22:30 Seacolor > 出番を待っているあいだ、先日のモジュールの話を読み返しておきましたので大丈夫
22:31 Moloheiya > ありがとうございますｗ
22:32 Seacolor > 現在の時点では、モジュールのメソッドやプロパティについては決まっていません
22:33 Seacolor > 一応、私が認識している「必要なモジュール」は
22:33 Seacolor > 音声モジュール・台詞モジュール・モーションモジュール・モデルデータ
22:33 Seacolor > の4つの筈ですが、間違いないでしょうか？
22:34 Moloheiya > はい、これは必要最低限ですね
22:34 Seacolor > UI部品をモジュール化するかどうかは、後日で？
22:35 Moloheiya > ですね。とりあえずどうすればモジュールとして機能するか分からないので、その作り方からお願いします。
22:35 Moloheiya > どうすればいいか分からなくて動けないのでｗ
22:36 Seacolor > モジュール自体は、単なるFlexコンポーネントとほぼ同じです。　ファイルが独立しているだけで
22:37 Seacolor > 作り方はモジュール化したいコンポーネントをmx:ModuleをMXMLのトップレベルとして定義して
22:37 Seacolor > [プロジェクトのプロパティ]の[Flexモジュール]タブで追加するだけですね
22:38 Moloheiya > Flex Builderですね
22:38 Seacolor > Flex Builderがなくてもモジュール化はできるのですが、Flex Builderがあると涙がでる程簡単です
22:39 Moloheiya > なるほどｗ
22:39 Seacolor > Flexコンポーネントというのは、誤解を恐れずに言ってしまえばただのクラスでしかありません
22:40 Seacolor > なので、この場合の「モジュールの作り方」というのは「クラスのインターフェイス」の話になりますね
22:40 Seacolor > そして、このクラスのインターフェイスについてはまだ決まっていないわけです
22:40 Moloheiya > ということは基礎からモジュールの関数群(API)を呼び出すのも、特に特別なことをする必要はないんですかね？
22:41 Moloheiya > 普通に関数を定義しておけばそれを呼び出せると。
22:42 Seacolor > こういうアクセスの仕方になる事を除いては、特別な事はありません > ModuleLoader.child.(関数名)
22:42 Seacolor > あとモジュールのロードが完了してからでないとアクセスできない、という点もかな
22:43 Moloheiya > モジュール＝クラスで、ロードしてメソッドを叩く・・・かな。
22:43 MineAP > わざわざロードする形にするんですか？
22:43 Moloheiya > インクルード出来るんですか？
22:44 Seacolor > 一応、現在ではその想定でいます > わざわざロードする
22:44 MineAP > みんなにClassを書かせてそれを最後にまとめてコンパイルすればいい気がするんですけど
22:44 Seacolor > もちろん、そちらの方が簡単なのですけれどね
22:46 Moloheiya > モジュールにする利点は、ロード・アンロード可能なところ？
22:46 Seacolor > いえいえ
22:46 Seacolor > 音声もモデルも全て埋め込んでビルドしてしまうと、実行時にメモリを相当食い潰す事になってしまうんです
22:47 Seacolor > モジュール化した場合、該当モジュールをアンロードすると、そのモジュールが管理している画像や音声は全て綺麗さっぱり消えてくれるんですね
22:48 MineAP > ああFlashのGCはあれだから・・・
22:49 Moloheiya > モジュールの中に音声やモデルを内包するんですよね？
22:49 Seacolor > 今のところ、それでいこうと思っています
22:49 MineAP > 各モジュールのトップレベルはmxmlで書くとして
22:50 Seacolor > GCの問題というか、全部入れちゃった重くなってしまうのは仕方ないです
22:50 MineAP > 中身は自前でクラス作ったりして委員ですよね？
22:50 Seacolor > 正確には、Moduleコンポーネントを継承してさえいればいいので
22:50 Seacolor > 別にmxmlで書く必要もありません
22:51 MineAP > ああなるほど
22:52 Moloheiya > http://itpro.nikkeibp.co.jp/article/COLUMN/20080205/292979/ モジュールについて分かりやすいの見つけたのでメモ貼り
22:52 Seacolor > 実は、mxmlで「mx:Moduleをトップレベルとして定義する」という事が、Moduleクラスを継承している事になっているんですよ
22:52 MineAP > ええ、わかります
22:52 MineAP > SoundManagerクラスを作るとして
22:52 MineAP > extends Module ってすればいいんですね？
22:53 Seacolor > 一応、先日のもろへいやさんとのお話では
22:53 Seacolor > 音声はメッセージ単位でモジュール化する想定です
22:53 MineAP > メモリをたくさん食わないように？
22:54 Seacolor > IntroVoice extends Module <- みたいになるかな
22:54 Moloheiya > それプラス、管理面も楽になると思います
22:54 Moloheiya > イベントなどはオンラインアップデートになるので
22:54 Seacolor > それと、後々追加・修正・変更を楽にする為ですね > メモリをたくさん食わないように？
22:55 MineAP > ふむふむ
22:55 Seacolor > Flexには標準でアプリケーションアップデートの仕組みがありますが
22:55 Seacolor > アプリケーションまるごとをアップデートするより、イベントやモデルデータ単位でアップデートできた方が軽いですし
22:56 Seacolor > なので、できる限りモジュール化していきたいと考えています
22:56 MineAP > なるほど・・・
22:56 Seacolor > モジュール管理自体はローカルDBを現在は想定しています
22:57 Seacolor > モジュール化する事の何より良いところは
22:57 Seacolor > ファイルがローカルに存在していなくても良い事ですね。　モジュール自体は単体のswfファイルになっているので
22:57 MineAP > おー
22:58 Seacolor > アプリケーションとモジュールが別々の場所にあってもいいわけです
22:58 MineAP > JavaのRMIみたいだ・・・
22:58 Moloheiya > その点おもしろいですねｗ
22:58 Seacolor > 一応、現在の想定ではモジュールはローカルにある前提ですが
22:59 MineAP > （あ、一度ローカルのメモリにロードしなきゃいけないのかな？だとしたらクラスの動的ロードと同じか）
22:59 Seacolor > モジュール前提で開発すれば、サーバから動的に取得するように簡単に変える事もできます
23:00 Seacolor > ですです > クラスの動的ロードと同じ
23:01 Seacolor > そろそろ本題に戻っても大丈夫でしょうかー？　まだご質問はありますか？
23:01 MineAP > 失礼しました
23:01 MineAP > どうぞ本題へ
23:01 Moloheiya > サーバーと連携出来ると、あちこちの「ボカロプラス」との連携なども考えられて楽しそうだｗ
23:01 Seacolor > いえいえいえいえ、がんがん質問しちゃってください！
23:02 Moloheiya > ｗｗ
23:02 MineAP > はーいｗ
23:02 Seacolor > もし何かお聞きしたい事がありましたら、早めにお願いします！　モジュールのインターフェイスを決めてしまった後は変え辛くなる事が予想されるので
23:04 Moloheiya > これからかなり質問することになると思うのでよろしくお願いしますｗｗ
23:04 Seacolor > 了解しました。　とりあえず先に進めますね
23:04 Moloheiya > はいｗ
23:04 Seacolor > 先ほど、モジュール(クラス)のインターフェイスについてはまだ決まっていないと言いましたが
23:05 Seacolor > 音声モジュールと映像モジュールについて、一度担当者の方と意識合わせを行なっておきたかったからです
23:06 Seacolor > モジュールはできる限り汎用的なインターフェイスにしたいところなので
23:07 Seacolor > 一応、私の認識としては最低限play()とstop()があれば良いくらいに考えているのですが、如何でしょうか？
23:07 MineAP > なるほど
23:07 b2ox > 一応play,stop,togglePauseが実装済みです
23:08 MineAP > 外部向けのI/Fはそんなものでいい気がします
23:08 Moloheiya > ですねー
23:08 Seacolor > 台詞も音声も映像もplay()とstop()で一応良い筈……ですよね？　ね？
23:08 Seacolor > 音声と映像は専門外なので助言をいただければ幸いです
23:09 MineAP > ポーズが必要かどうか
23:09 Seacolor > 個人的には「要らないかなー」と、思うのですが、如何でしょう？
23:09 b2ox > とりあえず実装してるってだけですね。
23:10 Seacolor > 必要がありましたら、忌憚なく言ってください。　まだ実装前の段階ですし
23:10 Moloheiya > モジュールのI/Fは取りあえずはその2つで大丈夫かと
23:10 MineAP > どちらかというと演出の人がほしいって言い出す気が・・・
23:10 Moloheiya > あー
23:10 Seacolor > 演出とは？
23:11 MineAP > 音楽再生してるときに一瞬止めて、そのまま流し続ける、見たいなスクリプトを演出さんが考えたとき
23:11 MineAP > playとstopしかないと、とめた後また最初から再生しないとだめですよね
23:12 MineAP > そういうときpauseがあると便利かもなぁと。
23:13 Seacolor > 「一瞬止めて」というのはモーションを？
23:13 MineAP > モーションをとめたがるシーンがあるかどうかはわかりませんが
23:13 MineAP > 音声（音楽）はあるかなーと思います
23:14 Moloheiya > BGMはあるかもしれないですね
23:14 Moloheiya > 映像はモーションの切り替えが出来れば問題ないかしら
23:15 Seacolor > ではpause()も追加で？
23:16 切断しました

-------- Start logging at 10/01/23 23:20:03
23:20 入室しました
23:20 *Mode +sn 
23:20 *loggers Quit (Ping timeout)
23:20 *Molo Join (~molo@cagoy02-172.kcn.ne.jp)
23:20 Molo > ちょい落ちてました・・・
23:20 MineAP > お帰りなさいませ
23:21 Seacolor > PMDViewer起動中。　「ボカロプラス！」の起動音だけでもう悔いなしという感じ
23:21 Molo > 落ちるとすぐ接続数制限に掛かってしばらく繋がらなくなるｗ
23:21 Seacolor > おお、ミクさんが激しく踊っている！
23:21 Molo > おお、アドレスとか貼ってました？ｗ
23:22 b2ox > http://cid-9da0fa00ac5a8258.skydrive.live.com/self.aspx/.Public/Temp/PMDViewer.air
23:22 MineAP > ウィンドウが動かせない・・・w
23:23 Seacolor > このモーションは「ぽっぴぽー」かな？
23:23 b2ox > ぽっぴっぽーです
23:24 Seacolor > プログラム担当としては映像や音声を堪能できるだけで「このプロジェクトに関わって良かった！」という気がしますね
23:24 Molo > 分かりますねそれ！
23:25 b2ox > 実はこれ作った後stop()の実装で再生位置を先頭に戻す処理を忘れてるっぽいことに気付いたw
23:25 Seacolor > え、じゃあどうやって繰り返しているんです？
23:26 b2ox > 今はstopがpause相当になってるんですw
23:26 Seacolor > なるほど
23:26 Seacolor > さて、抽象度のお話をしておきますと
23:26 Seacolor > 音声はメッセージ単位でモジュール化を考えています
23:28 MineAP > 音声はwavファイルですかね
23:29 Seacolor > 音声形式自体はモジュールに組み込んでしまえば同じなので、Flashで扱える形式であれば何でも大丈夫です
23:29 b2ox > PMDViewerの起動音はmp3です。
23:29 MineAP > 1音声ファイル=1モジュール ではないのか
23:29 Molo > "あいさつモジュール"といった感じですね
23:29 Seacolor > ですです。　一応、今の想定では >  1音声ファイル=1モジュール ではない
23:30 Seacolor > あまり細かくしてしまうと、逆に管理し辛くなるので
23:31 Seacolor > 音声を作る方も、面倒でしょうし
23:31 MineAP > 「あいさつモジュール」は時間が違うと挨拶が違ったりします？
23:31 Seacolor > そう考えると、メッセージ単位が抽象度として妥当かと考えました
23:32 Seacolor > そういう場合は、挨拶毎にモジュールを分ける想定ですね > 時間が違うと挨拶が違ったり
23:32 MineAP > 「おはようモジュール」があるわけですね
23:33 Seacolor > 分けた方が使い易いかなー、と
23:33 MineAP > 指定された音楽ファイルを組み合わせたモジュールを、要求された分だけ作るんでしょうか？
23:36 Seacolor > 申し訳ありません、「音楽ファイルを組み合わせた」の部分について、もう少し詳しくお願いします
23:36 MineAP > 「おはよう」「こんにちは」「こんばんは」「おやすみ」みたいなモジュールをひたすら作るお仕事なんですかね？
23:37 Seacolor > いえ、メッセージ単位ですので
23:38 b2ox > 「おはよう」〜「おやすみ」が入ったモジュールを作る？
23:38 Seacolor > 「おはよう！　今日も...」とか「もう寝るんだ？　もう少し一緒にいてほしかったけど...」とか一連の音声になりますかね
23:39 MineAP > それだと台詞が全部できないとモジュールが一つも作れないんですが
23:39 Molo > hm
23:41 Molo > 音声チームにもモジュール単位で作業をしてもらうというのは？
23:41 Seacolor > え、そうですか？
23:41 MineAP > 一つ持って事はないですね。でも台詞ができないとモジュールが作れません
23:41 Seacolor > 一応、そうなりますね > 台詞ができないとモジュールが作れない
23:43 Seacolor > 一応、そういう想定なのですが > 音声チームにもモジュール単位で作業をしてもらうというのは？
23:44 Molo > 作業の割り振りも分かりやすくなりますし、良いと思います
23:45 Seacolor > 問題があるようならば、抽象度を上げるなり下げるなり致しますが、如何しましょう？
23:45 MineAP > その一連のメッセージが膨大になる気がするんですが
23:46 Seacolor > ものすごい長い台詞でない限りは大丈夫だと考えておりますが……
23:47 Molo > どれだけ詰め込めるかは音声チームとの相談かな
23:47 Seacolor > なお、「一連のメッセージにする」というのは管理上の都合と音声担当者が細かく音声をいくつも作ってメンテナンスする事の手間を考えての事なので
23:47 Seacolor > 音声担当の方に「ちょっと待った！」と言っていただければすぐにでも再考致しますので
23:49 Molo > とりあえずこれで、明日の定例で出してみましょう
23:49 MineAP > そういえば今日は定例じゃなかった！
23:49 Seacolor > それと確認の為に言っておきますと、先ほどの例だと「おはよう！　今日も...」で1モジュール。　「もう寝るんだ？　もう少し一緒にいてほしかったけど...」で1モジュールですね
23:50 MineAP > わざわざ「モジュール」にする必要がないんじゃないかな、と思ったんです
23:50 Seacolor > と、いいますと？
23:50 Molo > モジュールが細かすぎる？ かな
23:50 MineAP > 「おはよう！　今日も...」のmp3ファイルを用意しておけばいいだけなのでは？と。
23:51 Seacolor > ぶっちゃけその通りです
23:51 MineAP > あれｗ
23:51 Seacolor > その方が楽なのは間違いないのですが
23:51 Seacolor > なんでモジュールにするかというと、
23:52 Seacolor > 音声・映像・台詞などの統一的な管理ができるという事と
23:52 Seacolor > モジュール化する事で拡張性を高める事があります
23:53 Seacolor > 音声・映像をそれぞれ単体の物として扱った場合それぞれ違ったスクリプトをアプリケーション側で実装してあげなければいけませんが
23:53 MineAP > ふむふむ
23:53 Seacolor > モジュールの汎用インターフェイスを作りそれを経由して使うのであれば
23:54 Seacolor > モジュールが音声でも映像でもそれ以外のものでも扱う事ができるようになりますので
23:55 MineAP > もっと音声ファイルを動的に組み合わせたりするのかなーと思ったんですが
23:55 Seacolor > それでも良いですよー。　ただ、あまり細かくしてしまうと
23:56 Seacolor > 音声の再生時に不自然になってしまう事と、将来的に膨大な数の音声モジュールの管理が必要になる事
23:56 Seacolor > 以上の点から、「メッセージ単位が良いのでは」と、考えたのですね
23:57 MineAP > なるほど
23:57 Seacolor > 如何でしょう？
23:57 MineAP > いいと思いますー
23:58 Molo > 同じく賛成です
23:58 MineAP > 単純作業が多くなりそうなのでソースを自動生成する感じにしたいですね・・・
23:59 Seacolor > それは言えますねー
23:59 MineAP > とりあえず少ないメッセージでどういう実装が必要か調べるかんじで
