2008年11月のエントリ

地道にARToolkit。ARToolkitでドミノ倒しを動かすために,描画エンジンをOpenGLからDirectXに変える作業を行っていた。これでxファイルを自由に読み込んだり既存のソースを使い回しできる。この辺は既にいろんな人がやっているので今更感はあるけど,ARToolkitの元論文を読んでみたり座標系の違いに苦労しながらもこんな感じのところまではいった。

2008112401

# とりあえずウェザタイの静止画をはめこんでいるだけでゲームができる訳じゃない。やろうと思えばウェザタイ自身も空中で動かせるのかな。

ここまでくればリアル指で仮想ドミノ倒しをいじるってのもすぐできそう。

今更だがARToolkitを試してみる。これはWebカメラで撮影した画像に3次元CGをリアルタイム合成する技術。下のカメラはWebカメラ2台で撮影した画像に,立方体を重ねた画像。交差法で見ると立体に見えるはず。2台同時だとさすがに重いけどリアルタイムな動画で動いていて,紙を動かせばちゃんと立方体も動く。こんな感じでカメラ2台とヘッドマウントディスプレイを使えば,外部を撮影した画像にいろんな物体を合成して見ることができるわけで。あとは擬似的に触ることができて人工知能ができてブレインマシンインターフェースができてヒゲができれば,電脳コイルになりますね。とりあえずこれとWorld Testerを使って面白いことができないか考えているところ。

#っていってもGPLらしいからその辺をどうしようってのも考えないと。

2008110301


ARToolkitをVisual Studio 2008 SP1 + Windows SDK for Windows Server 2008 and .NET Framework 3.5でビルドする方法。多分ちゃんとした方法じゃないしちゃんとまとめてないけど自分用メモってことで。

  • ARToolkit,DSVL,GLUTをダウンロード
  • GLUTをビルド。glut32.libをライブラリパスに入れる。特に困ることはなかったけど,/MT /MTdを/MD /MDdに変更したような気もする。DSVLの方だったかな。
  • Program FilesMicrosoft SDKsWindowsv6.1SamplesMultimediaDirectShowBaseClassesをビルド。インクルードパスに同フォルダを追加し,strmbase.libをライブラリパスに入れる。インクルードパスについてはPlatform SDKより優先させること。
  • DSVLextlibtinyxmlをビルド。/MT /MTdを/MD /MDdに変更しておく。tinyxml_STL.libをライブラリパスに入れる。
  • DSVLのインポートライブラリにcomsuppw.libを追加。さらにDbgOutStringがないといわれるのでコメントアウト。デバッグ用だし1行しかないしめんどいのでコメントにしてしまった。DSVLをビルドし,DSVL.libをライブラリパスに入れる。
  • ARToolkitをビルド。
  • DSVL.dll,glut32.dllをパスの通ったところにおいてサンプルsimpleTest.exeをおもむろに実行。
  • とりあえず「DSVL_GraphManager::SampleCB」で落ちるのでちょっと修正しておく。
    iter = iter2;
    // 追加開始
    if(iter == mb.end())
    {
        break;
    }
    // 追加終了