Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
今日、ここシアトルではめったに見られない吹雪が吹いています。これにあやかり、2011 年のホリデー シーズンに公開した Test Drive デモ "Let It Snow" についての解説を投稿したいと思います。 — 編集担当
ブラウザーが基盤のハードウェアを有効に活用できると、可能性は無限に広がります。ホリデー シーズンにリリースしたデモでは、Internet Explorer 10 で実現される、ハードウェア アクセラレーションをフル活用した、タッチ主導のブラウジング エクスペリエンスの優れている点をご覧いただけます。この記事では、その Let It Snow (英語) デモがどのように作成されたかを詳しく説明します。このデモで使われているパターンは、現在の Web と初期の Metro スタイル アプリ (英語) で広く見られる、典型的な HTML5 エクスペリエンスです。今回は、視覚的な観点ではなく、機能面から解説します。
性能の低いモバイル デバイスとタッチ主導のユーザー エクスペリエンスが主流になったことで、ユーザーがブラウザーのパフォーマンスについて期待することは急激に増えています。現在では、ブラウザーのパフォーマンスは、指を使って Web サイトをスムーズに動かせるか、Web サイトがタッチ操作にすぐに反応するか、ブラウザーの電力消費は効率的か (英語) という観点でも評価されます。Internet Explorer 10 と Windows 8 では、現実のシナリオに即した、世界最速のブラウザーを開発することを目指しています (英語)。
Let It Snow の開発
ホリデー シーズン用ポストカード まず、ホリデー メッセージを表示するための領域を含む、テーマ付きのポストカードを作成します。このポストカードは、HTML5 Canvas を使用して実行時に生成されるもので、イメージの描画、グラデーションの作成、不透明度と傾斜の操作など、一般的な描画技法が使われています。 |
|
アニメーションによる吹雪 次に、多数の舞い落ちる雪の結晶を追加して、吹雪を作成します。これは、2 つ目の Canvas を使って作成し、先ほどのポストカードに重ねています。雪の結晶は、1 つ 1 つが JavaScript コレクションのオブジェクトとして表現されています。オブジェクトには、結晶の現在の位置や落ちる速度といった結晶の状態と、描画するイメージが保持されています。この Canvas はフレームごとにクリアされ、シーンが基盤のモデルから再作成されます。 |
|
積もる雪 立て札の上に雪が徐々に積もっていきます。ヒット テストの技法を使用して、雪の結晶が立て札の上に来るタイミングを特定し、立て札上の任意の位置をターゲットとして雪の結晶にランダムに割り当てます。雪の結晶がターゲットの位置に近づいたら、HTML5 Canvas の合成モード (英語) を使用して、Canvas に雪の結晶を合成します。 |
|
積もった雪を払う 指またはマウスを使ってポストカードから雪を払うことができます。このデモでは、新しい MSPointer イベント (英語) を使ってユーザー入力を追跡しています。このイベントを利用すると、指やマウスといった種類の異なるポインター モデルに対しても、1 つの API だけで一貫して対応できます。これにより、Windows 8 で実行する Internet Explorer 10 では、すばらしいマルチタッチ エクスペリエンスを実現できます。このデモでは、キャプチャしたポイントを使って、Canvas の特定の部分を消去することで、雪が払われたように見せています。 |
|
シーン完成 レイヤー (Canvas) を合成して、インタラクティブなホリデー シーンを作成することができます。このデモで使用したパターンは、Angry Birds や Cut The Rope (英語) などのゲームで一般的に使われている技法で、スクリプト ベースのアニメーション、高度なユーザー入力、物理学に基づくゲーム理論などが取り入れられています。 |
Internet Explorer 10 と Windows 8 では、ハードウェア アクセラレーションをフルに活用できる、タッチ操作に対応した HTML5 プラットフォームにより、すばやく滑らかなインタラクティブ エクスペリエンスを実現できます。ぜひ、Windows 8 Developer Preview (英語) を使って、ご自身でこのエクスペリエンスの魅力をお確かめください。
— Internet Explorer 担当グループ プログラム マネージャー Bogdan Brinza