はじめに
PDAやスマートフォン、組み込み機器向けのOSに、MicrosoftのWindows CEがあります。2005年のバージョンアップでは、Windows Mobile 5.0になりました。Windows Mobile 5.0を採用したPDAには、国内ではDELLのAximシリーズやHPのiPAQやPHSとして通話と通信ができるウィルコムのW-ZERO3などがあります。
Windows Mobile 5.0では、以前のバージョンに対する新機能として、PC用のDirect3Dのモバイル版ともいえる、Direct3D Mobileという3DCGのためのAPIが追加されました。この記事では、Direct3D Mobileの導入を解説します。
Direct3D MobileではDirect3Dの固定機能パイプライン相当の以下の機能が使えます。
- ポリゴンの描画(頂点バッファとインデックスバッファのサポート)
- テクスチャマッピング(キューブマップのサポート)
- ライティング
- マテリアル
Direct3D Mobileに関するドキュメントは、MSDNのDirect3D Mobileをご覧ください。
対象読者
Visual Studio 2005(Standard Edition以上。言語は、C++)で、Win32を利用したプログラムを開発した経験があり、PC版のDirect3D8以降の固定機能パイプラインを使ったプログラムについても基礎知識があるとよいと思います。Windows Mobile(もしくはWindows CE)のアプリケーション開発経験は無くても大丈夫です。
必要な環境
- Visual Studio 2005
- Windows Mobile 5.0 SDK for Pocket PC
- Localized Windows Mobile 5.0 Pocket PC Emulator Images(Windows Mobile 5.0 for PocketPCの日本語版を対象に開発したい場合)
サンプルについて
今回のサンプルは、ウィルコムのW-ZERO3とhpのrx1950上での動作確認を行いましたが、ハードウェアによって使える機能が異なるようなので、それ以外の機種では実行できないことがあるかもしれません。注意すべき点は記事中でも触れていますので、その辺りを参考にしてみてください。



バイナリの方は、PocketPC用のCABインストーラになっています。インストール後は、[スタート]-[プログラム]に[d3dmobile]というショートカットができますので、これを起動するとサンプルが動きます。