自作ゲームにAR(Augmented Reality 拡張現実)を加える。気が付いたことメモ
以前自分が作成したゲームに対して、AR(Augmented Reality 拡張現実)を加えてみた。USBカメラの映像とゲームの3D物体がうまく合成され、ゲームのエフェクト(影、ステルス迷彩、波、煙、ブルーム)も、ちゃんと反映されたので良かった。やっぱ、作ったものが、ちゃんと動くとうれしいね!(DirectX + OpenCV で作成 )
やってみて気が付いたことメモ:
1)カメラのズームをして、外部パラメータを計算すると合成がうまくいかなくなる。
ズームする前とズームした後のカメラの内部パラメータが違うためだと考えられる。
「同じカメラを使っていて、前はうまく合成されたのに今回はうまくいかない・・」という場合が起きたら、カメラのズーム等の設定が変更されてないか確認すること。(イージーミスに注意!)
2)所詮合成であるので、現実空間の物体と3D空間の物体との
前後関係を比較して合成ができない。当たり前ですが、常に3Dの物体が前に表示される。
これは、かなりの問題です。
前後関係がはっきりしないと、やはり違和感があります。
(隠れなければいけないのに、隠れずに表示されるのはおかしい。)
(3D表示物が隠れない・・)
これを改善するためには、リアルタイムで現実空間の物体の現実空間の座標等の情報を取得して、3D物体との前後判定をする必要があると考えられます。考えるだけで、大変そう・・
でも、改善したいなあ。
[犬と猫モデルについて]:
『メタセコ素材! - メタセコイアで使える3D素材を公開 -』様
の無料3D素材を改変し、xファイルに変換したものを使わせて頂いております。