第 4 章 住宅景観シミュレーションシステムの 開発開発
4.3 ソフトウェア構成
本節では、サポーターがシステムを操作するためのツールとして開発したサポーター 用ツールについて説明する。
クライアント サポーター
クライアントの 視界 HMD カメラ
制御用PC 映像送受信用PC
された映像重畳表示
クライアントの 視界
された映像重畳表示 有線 CGを重畳表示 無線
図 4.2: ハードウェア構成
まず図4.3にサポーター用ツールのインタフェース画面を示す。左側の大きい画面が 拡張現実感の表示部であり、カメラで撮影された現実世界の映像と仮想物体のCGが 重畳して表示される。以下、これをメイン画面と呼ぶ。この画面の映像がクライアン トが装着しているHMDに出力されている。右側の小さい画面が操作画面であり、この 画面内にてCGの操作を行う。以下、サポーター用ツールの機能について説明する。
まず仮想物体として住宅のCGを表示した画面を図4.4に示す。また、このときに HMDに表示されている画面を図4.5に示す。CCDカメラがマーカを認識した時点で CGの重畳表示が行われる。住宅の表示位置は世界座標系の原点となっているマーカを 基準にして設定しており、プログラム内において変更可能である。図4.6は住宅の表示 位置を遠くに設定した場合である。操作画面では拡張現実感の環境が広く見渡せるよ うある程度離れた視点で表示される。メイン画面の視点はHMDに搭載されたCCDカ メラのものである。
次に操作画面の視点変更について説明する。操作画面の上部に「前面図」・「側面図」・
「上面図」のボタンがあり、それぞれのボタンをクリックすると、操作画面の視点を、
拡張現実感の環境を正面から見た視点・右横から見た視点・直上から見た視点に切り替 える。前面図の場合は図4.4のものと同様である。側面図の視点を図4.7に、上面図の 視点を図4.8に示す。また、操作画面右下の「カメラと同じ視点にする」ボタンでは、
メイン画面と同じ視点に移動させることができる。図4.9にその様子を示す。
図 4.3: サポーター用ツールのインタフェース
図 4.4: 住宅を重畳表示
図 4.5: HMDに表示される重畳表示の画面
図 4.6: 住宅の表示位置を変更
図 4.7: 視点変更:側面図
図 4.8: 視点変更:上面図
図 4.9: 視点変更:カメラと同じ視点にする
操作画面の下部にある「視点を前後に移動」・「視点を上下左右に移動」ボタンでは、
ボタンをクリックした後に操作画面内でドラッグを行うことによって、現在の視点位 置を基準に、視点を前後や上下左右に自由に動かすことができる。図4.10に視点を前 方に動かした場面を、図4.11には視点を左上に移動させた場面を示す。これらの操作 は、前面図や側面図、カメラと同じ視点などに関わらず、同様に操作できる。
続いてCGの操作について説明する。操作画面上に表示されている任意のCGをク リックすることで、そのCGが半透明になり、選択状態となる。図4.12にその様子を 示す。さらに操作画面下部の「モデルの平行移動」ボタンをクリックで選択すれば、操 作画面上でCGをドラッグすることでCGを上下左右手前奥と自由に移動させること ができる。図4.13にCGを平行移動した画面を示す。側面図や上面図に切り替えなが らこの操作を行うことで、3次元空間上でのCGの位置が把握しやすくなる。また、操 作画面で行ったCGの操作は、メイン画面においても同時に表示されているため、メ イン画面を見ながら現実空間におけるCGの位置あわせを行うことができる。CG以外 の部分をクリックすることで図4.14のようにCGの選択状態が解除され、CGの3次 元位置が決定される。同様に、操作画面下部の「モデルの回転」ボタンをクリックで 選択すれば、操作画面上でドラッグすることで、CGの原点を中心にCGを自由に回転
図 4.10: 視点変更:前後
図 4.11: 視点変更:上下左右
させることができる。図4.15にCGを回転させた画面を示す。平行移動の場合と同様、
CG以外の部分をクリックすることで図4.16のようにCGの選択状態が解除され、CG の表示される向きが決定される。
図 4.12: CGの選択
以上CGの操作について説明したが、モデルの平行移動の操作においては、奥行き 方向の操作が直感的に行えないことが予想される。そこで本システムでは、世界座標 系を構築しているマーカとは別のマーカを環境中に設置することで、そのマーカの位 置にマーカのIDに対応したCGを表示させる機能を実装した。このマーカをモデル用 マーカと呼ぶことにする。モデル用マーカは図4.17に示すように、位置決定用マーカ と向き決定用マーカの2個で1組となっている。モデル用マーカによるCGは、図4.18 に示すように、位置決定用マーカと向き決定用マーカを結ぶ直線をx軸とし、位置決 定用マーカの中心を基準として地面に接するように表示される。モデル用マーカの位 置は画像処理により計算され、向き決定用マーカを移動させると、図4.19に示すよう に、向き決定用マーカの位置に応じてCGの向きが変更される。さらに、位置決定用 マーカと向き決定用マーカの間の距離をLとし、表示するCGのx軸方向の幅をdと したとき、d < L≤ 2d のときには同じCGを2個、2d < L≤3d のときには3個とい うように、位置決定用マーカと向き決定用マーカの間隔が表示するCGの横幅より長
図 4.13: CGの平行移動
図 4.14: CGの表示位置の決定
図 4.15: CGの回転
図 4.16: CGの向きの決定
くなった場合、その間隔に応じて、同じCGが複数個繋げて表示される。図4.20に位 置決定用マーカと向き決定用マーカの間隔を広くすることでCGを2個表示させた様 子を示す。この機能は、フェンスや生垣、塀などの外構を設計する際に役立つことが 期待される。
図 4.17: モデル用マーカ
モデル用マーカを用いて重畳表示したCGも、他のCGと同様に、平行移動や回転を 行うことができる。図4.21にCGを選択した画面を、図4.22にCGを平行移動させた 画面を、図4.23にCGを回転させた画面をそれぞれ示す。これら平行移動や回転によ るモデルの表示位置の変更は、「モデルの位置・角度をマーカの所に戻す」ボタンをク リックすることにより、図4.24のように表示位置を元に戻すことができる。また、図 4.25に示すように、「モデルを消す」ボタンをクリックすることで、CGを非表示にす ることもできる。
本システムのソフトウェアは、Microsoft Visual Studioを用いて開発し、Windows 上で動作する。3次元モデル表示ライブラリとしてTV3D 6.5[28]を使用し、重畳表示に 用いたる住宅などの3DCGは3DマイホームデザイナーPro6[29]を用いて作成した。
図 4.18: モデル用マーカによる重畳表示
図 4.19: 向き決定用マーカによる向きの変化
図 4.20: マーカの間隔によりCGの個数が変化
図 4.21: モデル用マーカで表示されたCGの選択
図 4.22: モデル用マーカで表示されたCGの平行移動
図 4.23: モデル用マーカで表示されたCGの回転
図 4.24: モデル用マーカで表示されたCGの表示位置のリセット
図 4.25: モデル用マーカで表示されたCGの非表示