WindowsMobile 6.0/6.1 d3dmclock v1.10 3D 表示のデジタルクロックです。  ・3D アクセラレータ対応。数字は 3D のポリゴン表示です  ・HTC Touch Diamond の加速センサーに対応し、画面がスムーズに回転します。 ハードウエアアクセラレータ機能を活用して高速にポリゴン描画します。 HTC Touch Diamond シリーズの加速センサーに対応しており、本体の傾きに追従して 画面が回転します。3D ポリゴンなので斜めなども OK。各数字は動き回ります。 動作を確認したハードウエアアクセラレータ搭載の機種は次の通りです。 ・HTC Touch Diamond (EMOBILE S21HT 他) おそらく同等の Touch Diamond 系や Touch Pro でも動作すると思われます。 加速センサーが無くても動作可能です。 背景画像は適当に入れ替えて使用してください。 v1.10 の変更点: メニューから任意の画像を読み込めるようにしました。 ●動作環境 ・WindowsMobile6.0/6.1 汎用 WindowsMobile5.0 でも動作するかもしれませんが未確認です。 ●動作確認環境 ・WindowsMobile6.1 HTC Touch Diamond S21HT   Qualcomm 7201A 内蔵の ATI core でハードウエア高速に描画できます。 ・WindowsMobile6.0 HTC Touch Dual / EMONSTER lite S12HT   リファレンスラスタライザで起動できますが非常に低速です。お勧めしません。 各端末の 3D機能詳細ページ   http://hp.vector.co.jp/authors/VA004474/wince/d3dmcapslist.html ●注意 ・d3dmclock 自体はフリーソフトウエアです。 ・ソフトウエアの仕様は予告なしに変更されることがあります。 ・配布前の動作テストは必ずしも完全ではありません。 ・必ず自己責任で使ってください。 ・利用時は、あらかじめ重要なデータのバックアップを取っておいてください。 ●install 方法 zip ファイルを展開し、中の d3dmclock.WM6ARM.CAB を実行してください。 インストール時にデバイスと互換性がないとの警告が出ますが無視して構いません。 ●使い方 プログラムメニューから d3dmclock のアイコンを実行してください。 ・カメラ操作  画面スライド    回転とズーム  カーソルキー    平行移動 本体を傾けると追従して画面が回転します。常に数字を水平に保つよう位置します。 テーブルの上に置いた場合など、本体が水平になると直前のアップベクターを保持 したまま回転を止めます。 メニューで表示オプションを変えることが出来ます。 ●メニュー Light 光源操作モードに切り替えます。 ColorMap 数字のテクスチャマップを On/Off します。 EnvMap 背景画像を元にした環境ライトを On/Off します。 Text Texture 数字のテクスチャを切り替えます。 Preset BG 付属の背景画像に切り替えます。 Open BG File 任意の画像を背景として指定します。jpeg, bmp, png 他指定可能 CameraReset カメラを初期位置に戻します。 24H 時刻表示の方法を切り替えます。24時間制/12時間制 Disp FPS フレームレートの表示を切り替えます。 Disp GV 加速センサーの値を表示します。 Animation 数字が動き回るアニメーションを止めます。 Exit プログラムを終了します。 ●アンインストール手順 プログラムの削除から 「 HYP d3dmclock 」を削除してください。 ●背景画像を入れ替える方法 メニューから「Open BG File」を選んでください。 ダイアログで任意の画像ファイルを指定できます。 サイズ、フォーマットは任意です。jpeg, bmp, png, gif, 他が読めます。 ただし読み込み後、サイズは正方形に変換されます。 ●数字用のテクスチャを入れ替える方法 インストールフォルダに dds 形式の画像が入っています。 textimage0.dds textimage1.dds textimage2.dds textimage3.dds textimage4.dds textimage5.dds textimage6.dds textimage7.dds 16x16 〜 256x256 等、2の n乗サイズであればどんな大きさでも構いません。 フォーマットは 16bit R5G6B5 にしてください。 注意点としては、必ず mipmap が必要です。mipmap が無い場合は真っ白な表示に なってしまいます。 dds を作る方法。Direct3D SDK に入っている DirectX Texture tool を使います。 例 (1) 128x128 サイズで bmp を作成する (2) DirectX Texture tool に bmp を読み込ませる (3) メニューの Format → Change Surface Format     「Unsigned 16bit R5G6B5」を選択する (4) メニューの「Generate Mip Maps」を実行する (5) 保存する ●Direct3DMobile について Direct3DMobile を調べつつ、デモプログラム bumptest.exe を作成しました。 どうせならもう少し実用的なものに応用しようと時計にしてみました。 意味もなく数字 1つ1つがポリゴンで動きます。 小さいためノーマルマップは目立たなかったので、背景に合わせて簡単な Ambient Map の効果を入れています。 WindowsMobile で iPhone/iPod touch のようなスムーズな動作を実現するには なかなか苦労します。 プログラムについて解説などを行っているブログ   http://wlog.flatlib.jp/ 各端末の 3D機能詳細ページ   http://hp.vector.co.jp/authors/VA004474/wince/d3dmcapslist.html ●最後に HTC Touch Diamond の加速センサーのアクセスに関しては下記 blog を参考に させていただきました。 Scott's Weblog http://scottandmichelle.net/scott/comments.html?entry=784 2009/01/13 v1.00 2009/01/14 v1.10 メニューから任意の画像を読み込めるように変更しました。 小笠原博之 < hiroog ( at ) flatlib.jp > http://wlog.flatlib.jp/ http://dench.flatlib.jp/ http://hp.vector.co.jp/authors/VA004474/