Windows Developer Days 2日目にも参加してきた

2012年4月25日水曜日

昨日の Windows Developer Days 1日目に参加してきた の続きです。

= キーノート
既にいろんな記事が公開されている気がしますが、VOCALOID全力推しのプレゼンテーションでした。
Windows 8とその周辺のAPIを使うとどのようなことが出来るのか、どんな未来を作っていけるのか、というものでした。

オープニングムービーはこれ。かなり力入ってます。
映像はMiku Miku Danceで作ってるとのこと。Windows 8(というかMetroスタイルアプリ)の利用モデルとして、よく出来ていました。多分プレス記事が公開されるので詳細は端折りますが、Metroスタイルが当たり前になった時にどんなWindowsの世界が展開されるのか、というイメージを参加者と主催者が共有出来る、良いデモだったと思います。

= ランチ
今日は、昨日よりもしっかりと食べられました。茶そばうまうま。

クラウディアさんKitKatが大量展開されてました。

キーノートのムービーにあった、TULLY'Sの看板。
昨日見た時は「なんだろこれ?」という感じだったのですが
納得でした。いい未来の像のひとつ。

では引き続き午後のセッション。

= Windows 8とAzureで更に広がるVOCALOIDの世界
キーノートでがっつりとVOCALOIDの利用モデルを見ることが出来たのでこのセッションは回避しようかと思いましたが、

そう聞いたら行くしかないわー。行くしかないわー。
私はセッション会場前へ早めに着いたのですが、その後入場待ち列がどんどん伸びていき立ち見必至な状態に。
講演者はヤマハ株式会社の剣持氏。「VOCALOID開発元締め」と自己紹介されていました。ライブ作曲を交えつつVOCALOIDの技術サイドの話など、幅広く面白い話を頂きました。
気になったポイントをいくつかメモ。
  • VOCALOID街頭調査: 2011年4月 14歳から40代の男女: 10代68% 20代61% 30代42% 40代35%
  • プラグイン、ジョブスクリプトはLua言語で書くことが出来る
  • 楽器が変わったり増えたりすると、生まれる音楽も変わる。ベートーベンのピアノソナタに途中で新たなタイプが増えたのは、彼が新しいピアノを使うようになったから。同じようなことがVOCALOIDによって引き起こされていくのではないか
  • VOCALOIDのの3つの未来。better quality, easier-to-use, easier-to-join
    • 品質にはまだまだ満足してない
    • ソフトの使いやすさを改善していきたい
    • 取っつきにくそう、と思われずにもっと色んな人が入ってきやすくしていきたい

セッション後半は、Microsoft MVP for Windows Azureの亀渕氏による VOCALOID + Windows Azureのお話。
"VOCALOID3 as a Service on Windows Azure"のコンセプトはsimple, scalable, portableとされ、きれいにAzure上でのスケーラブルな設計をされていました。

= ミスドブレイク
安定のポン・デ・リングと、なんだっけ。
おいしかった。

後でまた来た時には箱詰めされてた。
会期中に配り終わらなかった分はお土産パックに
なる、とかだったのかな。

糖分大量補給済みだったので避けましたが、
アイスもありました。

「何が始まろうというんです?」な状態。
右側のMacBook Pro 17インチがひときわ異彩を放っています。

= BigDataの活用で忘れてはいけないポイント

  • (なるべく生の)データをちゃんと蓄積していくこと
  • ビジュアライズ方法を練ること
だったのかな。資料公開されたらもう少し追いかけたいです。


= ローミング - PCの境界を超えた作業状態の維持
従来から.NET Frameworkベースのアプリケーションではローミングデータとローカルデータの使い分けが出来るようになっていたのですが、これがクラウド対応するよーという話なんだろうなと思いつつセッション潜入。
ライブコーディングが長めだったので集中力切れていしまいましたが
ローミング対象に向いたデータ: アプリ設定で使用する小さなキーと値のペア。読みかけの本のページのようなユーザーの状況。独自フォーマットの小さな設定ファイル。また、常時ネットアクセス出来るとは限らないことにも注意を払う必要がある
というお話でした。

= Direct XとGPUチューニング
途中入場でしたが、

  • パフォーマンスについては、レンダリングプロファイルを取ってチューニングすべき
  • 60fps出せなければ58fpsとか中途半端になるのではなく、ガクッと30fpsまで落ちる
  • 60fpsと30fpsを行き来するとかなりユーザにとってストレスになるのでなるべく60fpsを守るべき
  • そして、できるだけ消費電力を抑える必要がある
  • レンダリングコスト削減について2点
    • シェーダー演算の複雑さを最小限に抑える
    • 冗長な処理を最小限に
  • ラスタライズ削減で2点
    • ピクセルバウンドが原因の場合はターゲットをスケーリング
    • 深度値の複雑性、またはオーバードローを最小限に抑える
  • ここでは挙げていないけど、z-prepassレンダリングも有効
  • 不要な分については処理ビット数を減らす。Minimum Precision機能。HLSLにmin16float/min12int/min16intというのが追加されていて、これらを使って最小精度を指定出来る。例えば32bit処理が必要ないところを16bit処理出来れば、同じ時間で2倍のデータを処理出来る(注:GPUはこういう処理に向いてますね)
  • タイルベースレンダリング。一部のグラフィックアーキテクチャではタイルキャッシュが使用される。なるべくメモリへアクセスしないように、というアプローチ
  • タイルベースレンダリングの方針
    • シーン半ばでのフラッシュを避ける
    • レンジターゲット間のスワップを避ける
    • レンジターゲットの位置部分だけを更新する場合はシザーを使用する
    • 可能な場合はDISCARDおよびNO_OVERWRITEを使用する
ということで、実践的なテクニックが多く紹介されていました。セッション資料が公開されたらしっかり読みたい。

= 二日間のセッション終了(^o^)
一足早く、これで終了。

二日間の様々なセッションを聞いている中で、こんなことに気付きました。
「最近ほんの少しだけどWindows Phone開発に触れ始めたことで、Metroスタイルアプリの開発に関しても想像力の働くところがかなりある」というものです。
ここで、「ある技術について学んだことが他のエリアにも転用出来る」というのは私が凄いのではなく、アーキテクチャが優れているということに他なりません。
そして、
  • 幅広いデバイスでのOS動作
  • x86に加えARMでの動作も前提としたアプリケーション開発という新たな常識の導入
  • これを容易にするマネージドコードとその高パフォーマンスなランタイム(当然、更にパフォーマンスを確保したければネイティブコードを利用するという選択肢も保持されている)
  • 統一されたデータ処理の枠組み(LINQ)を含む強力かつ優れたC#などの言語
  • 翻ってサーバ側では柔軟な構成と高パフォーマンスを実現するWindows Azure
  • そして最高に洗練された開発環境であるVisual Studio

技術的な要素は揃いすぎなぐらい揃っています。あとはこの舞台で何を作るか。その多くは我々開発者に委ねられている状況だということがはっきりと分かりました。
こうなるとワクワクしてしょうがないので、まずはどんどんWindows Phone用のアプリも開発していきます :)

1 件のコメント:

  1. WDDへのご参加ありがとうございました。また、ブログも拝見させていただきました。
    楽しんでいただいたようで大変ありがたく思っております。そしてなによりも開発者の皆様のお力が今後も必要でございますので、引き続き応援していただけるよう、よろしくお願いいたします。

    Twitter:@waki / マイクロソフト西脇

    返信削除