後藤弘茂のWeekly海外ニュース

2Dも3Dハードで描く次期Windows「Longhorn」のデスクトップ




●Desktop Composition Engine(DCE)が中核となる新UI

Longhornneでは、GDIとGDI+はDirectXベースの新しいグラフィックライブラリで置き換えられる

 Microsoftが次期Windows「Longhorn(ロングホーン)」で目指しているのは、3Dハードウェアを使った魅力的なビジュアル効果を、Windowsとサードパーティアプリケーションの両方のユーザーインターフェイス(UI)で実現することだという。そのため、Longhornはデスクトップの描画システムを根底から変えた。LonghornのUIでは、どんな機能を実現し、どんなハードウェアが要求されているのか。先週のレポートより、もう少し詳しく説明しよう。

 まず、Longhornは、デスクトップの描画エンジンとして新しく「Desktop Composition Engine(DCE)」を備える。デスクトップは、DCEを使った描画システムへと完全に再構築される。GDIとGDI+は新ライブラリに置き換えられ、実質的にDCEに吸収される形となる。

 前回のレポートと多少重なるが、これまでのWindowsのデスクトップは、単一のグラフィックスサーフェイスだった。各アプリケーションウィンドウは共有サーフェス上の領域として定義され、その領域だけに描画している。ウィンドウ同士がオーバーラップする場合には、最前面のウィンドウだけが描画される。隠れている部分は、描画されていないため、オーバーラップするウィンドウを動かすとぎこちなくなる。また、ほとんどのアプリケーションは、旧来のグラフィックスAPIであるGDIを経由して描画している。

 それに対して、Longhornのデスクトップは、完全に異なる方法で描画される。各ウィンドウはそれぞれ独自のサーフェイスに描画される。これは、ビデオメモリ上ではバックバッファ領域となり、Longhornでは多くの場合ダブルバッファされるという。実際には他のウィンドウの下になって見えない部分も、個々のサーフェイスの段階では描画されている。

 Longhornでは、この個別サーフェイスに描かれた各ウィンドウを、DCEがコンポーズしてデスクトップを構築するという仕組みになっている。だから、オーバーラップウィンドウを動かしてもスムーズになる。また、コンポーズの頻度は、最高で画面リフレッシュレートなので、なめらかな動きになる。

 Longhornのモデルでは、DirectXをベースにすることになる。そして、各サーフェイス毎に異なるエフェクトを、3D GPUハードウェアを使ってかけることができる。

●豊富な機能をデスクトップにもたらす

WinHECで公開されたデモ。踊るウィンドウ

 Microsoftによると、DCEを導入する目的は、3Dハードウェアを使った魅力的なビジュアルエフェクトを、Windows UIとサードパーティアプリケーションの両方で実現できるようにすることだという。具体的な例としてMicrosoftが挙げているのは、半透過(translucency)ウィンドウ、ウィンドウ変形、ベクターグラフィックスアニメーション、各種イメージングエフェクトなど。

 実際に現在デモしているエフェクトは、ウィンドウがデスクトップ上ではね回ったり、傾く、ねじ曲がるといったものだが、他にもエフェクトが実装されると思われる。実際のデモを見ると魅力的なのは、半透過(translucency)ウィンドウで、どのアプリケーションも半透過にできるのは便利そうだ。

 また、この他にも様々なハードウェアアクセラレートされたグラフィックス機能が新たにサポートされる。テキスト、2Dベクタグラフィックス、3Dグラフィックス、デジタルイメージング、ビデオなどだ。

 まず、テキストでは「ClearType」のハードウェアアクセラレーションがある。ClearTypeは、Microsoftが開発した、液晶ディスプレイでの文字解像度を擬似的に上げる技術。これは液晶の特性を利用して、サブピクセルレベルで補間する。Longhornでは、Pixel Shader 2.0を使ってClearTypeのハードウェアアクセラレーションを実現するという。液晶ディスプレイが主流になりつつある今、これは魅力的なフィーチャだ。

 2Dベクタグラフィックスは、Longhornでは3Dハードウェアを使ってレンダリングされるという。例えば、直線や曲線はトライアングルリストにテッセレート(平面分割)される。塗りつぶしはテクスチャとして適用される。また、2Dグラフィックスでは、2×2のハードウェアフルスクリーンアンチエイリアシングが効果を発揮するとMicrosoftは言う。

 このように、Longhornではテキストや2DのレンダリングもGPU機能に深く依存している。そのため、テキストや2Dの品質も、Direct3Dのハードウェアアクセラレーション性能に左右されると、Microsoftでは説明する。

 カラーパイプラインでは、各コンポーネント“8bitより上(greater than)”がサポートされる(ミニマムは8bit)。Matrox GraphicsのJohn Quach氏(Asia Pacific Sales Manager)は、昨年のParheliaの発表時に「MicrosoftのLonghornは、(8bitより上の)高カラー精度をサポートする予定だ。当社はすでにParheliaで10bitをサポートしている」と語っていた。

 高DPIスケーリングも重要な機能だ。各クライアントウインドウを任意のDPIに拡大する機能で、高解像度ディスプレイ時代に対応したものだ。現在のWindowsでは、多くのアプリケーションが、96dpiで表示されることを前提と仮定して作られている。しかし、高解像度ディスプレイが増えているため、実際には96dpiでは表示が小さすぎる場合がある。そのため、Longhornではコンテンツに合わせてDPIを自由に変えられる機能が加わる。DCEは、レガシーアプリケーションでもスケーリングできるようにするという。また、スケールだけでなく、ローテイトや切り取りなどのオペレーションも提供される。

 バイリニアやバイキュービックといった各種イメージフィルタリングもDCEは提供する。影付け、ブラー、リカラーリングなどのエフェクトも加えることができる。このほか、フリッカフリーのビデオ再生(Pixel Shader 2.0?)などもフィーチャとしてMicrosoftは挙げている。

Longhornでは2D、3Dグラフィックスはもとより、各種デジタルイメージング機能やClearTypeもハードウェアアクセラレートされる。また、2Dグラフィックスは3Dハードウェアでレンダリングされる

●Shader 2.0がLonghornのフル機能には必要

Tier 1と2のハードウェア要件

 Longhorn UIには2つの段階がある。上に挙げたLonghorn UIの全ての機能を実装するのは「Tier 2 Experience(仮称)」、ミニマム機能を提供するのは「Tier 1 Experience(仮称)」だ。Tier 2はDCEのフル機能が実装されている。Microsoftは、これをスタンダードにしようと考えているようだ。

 それに対してTier 1は、ミニマムのDCE機能だけが提供される。Tier 1で提供するのは、高DPIスケーリングや半透過ウィンドウといった、最小の機能だけ。Microsoftによると、Tier 1は高度なグラフィックスハードウェアを持たないデスクトップや、ノートPCの低消費電力モード時などのためのものという。

 高機能を目指すTier 2のハードウェアリクワイヤメントは、かなりレベルが高い。

 まず、GPUハードウェアには、DirectX9のミニマム機能のハードウェア実装が必要となる。例えば、Vertex Shader 2.0/Pixel Shader 2.0のサポートが必要だ。Pixel Shader 2.0が必要となるのは、ビジュアル&UIエフェクトをShaderで実現するためだ。また、ClearTypeをハードウェアでアクセラレートするためにも必要だという。

 この他、バンプ&エンバイロメントマッピング、ルミナンス効果付きバンプマッピング、ハードウェアトランスフォーム&ライティング(T&L)、2×2フルスクリーンアンチエイリアシングなどが必要項目とされている。ここでハードウェアT&Lと言っているのは、現実的にはVertex Shader 2.0のハードウェア実装となるだろう。現実的にはProgramable Shader 2.0を搭載するDirectX9世代GPUならOKということだ。ハードウェアテッセレータ(平面分割ユニット)や浮動小数点精度ピクセル演算などは、今のところ要求項目には見られない。

 ちなみに、上記のハードウェア機能がなかった場合には、LonghornはTier 1にUIをスケールダウンさせるという。

●ビデオメモリは推奨128MB

 Tier 2では、ビデオメモリは最小で64MB、推奨は128MBが現在見積もられているという。これは、デスクトップ描画システムをDCEに変更したためだ。DCEでは、グラフィックスシステムは、実際のデスクトップ領域よりもはるかに大きな描画エリアを、バックバッファに確保しなければならない。開くウィンドウが開くとどんどんバッファが必要になる。そのため、膨大なビデオメモリが必要になる。もっとも、メモリの量自体は、GPUの場合はメモリの粒度が高まってしまったため、問題は少ない。Longhornが登場する時点では、128MBはその時点で売られているGPUのミニマムの粒度となっているだろう。

 ビデオメモリ帯域も同様に膨大な量が必要になる。そのため、MicrosoftはTeir 2がUMA(統合メモリ構成)の統合チップセットでも可能かどうか、まだ決めかねているという。少なくとも、シングルチャネルメモリのUMA構成は不可で、デュアルチャネルDDRのUMAはおそらくサポートするだろうという。Longhornのベータ版までには決定する見込みだ。

 ビデオバスも同様で、WinHECでのプレゼンテーションではTier 2ではAGP 8xかPCI Express x16以上となっていた。

Tier 2のハードウェア要件

 最新グラフィックスカードのメインストリーム以上の機能を要求するTier 2に対して、Tier 1はずっと大人しい。基本的にはDirectX7相当の機能と32MBビデオメモリ(1,024×768ピクセル時)、32bppのカラー精度、AGP 4xかPCI Express x16以上のバス、DDRメモリのUMA構成など。細かく見ると32bppカラー精度、24bitデプス/8bitステンシルバッファ、4テクスチャブレンドステージ、2同時テクスチャマップ、COLORWRITEENABLEサポート、スペキュラハイライト&アフラブレンディンググリーシェーディング、パースペクティブマッピング、MIPマッピング、キューブマッピングなどとなる。

 ハードウェアT&LもProgramable Shaderも必須にはなっていないため、統合チップセットもLonghorn時点ならサポートできる。Microsoftとしては、Tier 1で全ハードウェアをサポートする姿勢を示しつつ、段階的にTier 2へと全てを移行させようと考えていると思われる。ミニマム要求のTier 1スペックを下げているのは、Microsoftが新UIをデスクトップだけでなく、ノートPCやさらに小型の機器にももたらそうとしているからだと思われる。

Tier 1のハードウェア要件

□関連記事
【5月9日】【後藤】MicrosoftがLonghornの3Dユーザーインターフェイスを明らかに
〜DirectX9 GPUが必須
http://pc.watch.impress.co.jp/docs/2003/0509/kaigai01.htm

バックナンバー

(2003年5月12日)

[Reported by 後藤 弘茂(Hiroshige Goto)]


【PC Watchホームページ】


PC Watch編集部 pc-watch-info@impress.co.jp 個別にご回答することはいたしかねます。

Copyright (c) 2003 Impress Corporation All rights reserved.