2008-10-31

Introducing Direct2D and DirectWrite

Windows 7: Introducing Direct2D and DirectWrite | pdc2008 | Channel 9

PDC2008の動画が来た。Windows 7の新しいAPI、Direct2DとDirectWriteについて。その概要と実際のコード。

Direct2Dは2D描画用の新しいAPIで、Direct3D 10.1の上に構築されている。つまり、GPU支援による描画ができる。また、アンチエイリアスなどの機能も使用可能で美しい描画ができる。主にC++のネイティブコード用に作られている。完全にソフトウェアだけで動作することもでき、動画のデモでは、ソフトウェアだけでも、GDI+より速いとされている。API自体はCOMベース。ただし、GDI/GDI+などへ描画することもできるし、GDI/GDI+から描画することもできる。が、その場合は遅くなる。

DirectWriteは文字の描画用の新しいAPIである。GDI/GDI+やDirect2D、あるいはビットマップ上への描画ができる。ClearTypeやOpenTypeフォントの多くの機能をサポートしている。Direct2D上に描画する場合は、GPUによる支援が得られる。また、わざわざシステムにフォントファイルをインストールしなくても使用できるという機能もある。ブラウザやワードプロセッシングを実装する時ぐらいにしか必要でないようなローレベルな機能もあるようだ。(日本語でローレベルとか低レベルとか低級などというと、どうも劣ったという意味に感じられてしょうがない。いっそのことLow Levelにするべきか。)

ほんの少しだけ触れられていた、UIAnimationが気になるところだ。あの手のものはCOMではなく、本当のC++のライブラリ(COMのような、言うなれば単なる構造体と関数ポインタじゃなくて)としてあったほうが使いやすいだろうけれど。

もちろん、これらの機能がXPに提供されることはない。コーラを飲んだらゲップがでないくらいにありえない。Vistaには提供されるかもしれない。少なくともVistaには提供されて欲しいところだ。

Tom's Blog(Direct2Dについて解説するために開設されたブログ)

No comments:

Post a Comment

You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.