FLARToolkitで、カメラとマーカのファイルをEmbedする方法

  • このエントリーをはてなブックマークに追加
  • 0

FLARToolkitのスターターキットは、基本的にマーカとカメラの
パラメータファイルを外部からロードすることになっている。
しかし、俺は埋め込みたいので、いつも違う方法を使っている。

実際埋め込みをやると結構長いコードになるのだが、
今日はFLARParamとFLARCodeをswfに埋め込んでおく時の
読み込み方だけを解説しよう。

ARのすべて ケータイとネットを変える拡張現実

著者/訳者:日経コミュニケーション編集部

出版社:日経BP社( 2009-05-28 )

定価:

Amazon価格:¥ 2,592

単行本 ( 232 ページ )

ISBN-10 : 4822210839

ISBN-13 : 9784822210830



.fla 2 ―Idea of Flash Creation―

著者/訳者:新藤愛大 寺井周平 萩原俊矢 小山智彦 眞野東紗 小瀧和正

出版社:ワークスコーポレーション( 2009-11-21 )

定価:

Amazon価格:¥ 8,706

単行本 ( 328 ページ )

ISBN-10 : 4862670717

ISBN-13 : 9784862670717



基本はEmbed。

Flashで埋め込みと言えばEmbedだ。
メンバ変数の所に、こんな感じで書いておく。
勿論、ソースの位置からカメラファイルとパターンファイルを
参照できるようにしておくこと。

以下の例の場合、「このソースと同じフォルダに「assets」フォルダがあり、
その下にcamera_para.datとpatt.hiroがある。

ActionScript

  1. [Embed(source = "assets/camera_para.dat", mimeType = "application/octet-stream")]
  2. private var CParam:Class;
  3. [Embed(source = "assets/patt.hiro", mimeType = "application/octet-stream")]
  4. private var CodeData:Class;
  5.  
  6. protected var _param:FLARParam;
  7. protected var _code:FLARCode;

で、コンストラクタにでもこうやって初期化コードを書く。

ActionScript

  1. var codeFile:ByteArray = new CodeData() as ByteArray;
  2.  
  3. _param = new FLARParam();
  4. _param.loadARParam(new CParam() as ByteArray);
  5. _param.changeScreenSize(320, 240);
  6. _code = new FLARCode(16,16);
  7. _code.loadARPatt(codeFile.readMultiByte(codeFile.length, "shift-jis"));

これでよし。
以降、必要なものを順次初期化するんだが、結構多い。
このやり方だとスターターキットのPV3DAppだのを使えないので、
自分で初期化しないといけない。

このデモを作ったコード(これ)なんかは、初期化が全部書いてあって
サンプルとしてはいいと思う。
内容的にはスターターキットのSimpleCubeをPlaneに
変えたくらいのものだから。

なお、FLARToolkitのりビジョン3236辺りから、FLARParamは
自動的に標準のカメラパラメータが入るようにmakcなる人が改造していた
なので、読み込むのはマーカのファイルだけでいいかも。
ただ、当該スレッドには「new FLARParam(true)」とあるが、
多分「FLARParam()」で動く。

スポンサーリンク
スポンサーリンク
  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク