FLARToolkitで、カメラとマーカのファイルをEmbedする方法
FLARToolkitのスターターキットは、基本的にマーカとカメラの
パラメータファイルを外部からロードすることになっている。
しかし、俺は埋め込みたいので、いつも違う方法を使っている。
実際埋め込みをやると結構長いコードになるのだが、
今日はFLARParamとFLARCodeをswfに埋め込んでおく時の
読み込み方だけを解説しよう。
ARのすべて-ケータイとネットを変える拡張現実著者/訳者:日経コミュニケーション編集部
出版社:日経BP社( 2009-06-01 )
Amazon価格:¥ 2,520
ISBN-10 : 4822210839
ISBN-13 : 9784822210830
.fla 2 ―Idea of Flash Creation―著者/訳者:新藤愛大 寺井周平 萩原俊矢 小山智彦 眞野東紗 小瀧和正
出版社:ワークスコーポレーション( 2009-11-21 )
Amazon価格:¥ 3,990
ISBN-10 : 4862670717
ISBN-13 : 9784862670717
基本はEmbed。
Flashで埋め込みと言えばEmbedだ。
メンバ変数の所に、こんな感じで書いておく。
勿論、ソースの位置からカメラファイルとパターンファイルを
参照できるようにしておくこと。
以下の例の場合、「このソースと同じフォルダに「assets」フォルダがあり、
その下にcamera_para.datとpatt.hiroがある。
private var CParam:Class;
[Embed(source = "assets/patt.hiro", mimeType = "application/octet-stream")]
private var CodeData:Class;
protected var _param:FLARParam;
protected var _code:FLARCode;
で、コンストラクタにでもこうやって初期化コードを書く。
_param = new FLARParam();
_param.loadARParam(new CParam() as ByteArray);
_param.changeScreenSize(320, 240);
_code = new FLARCode(16,16);
_code.loadARPatt(codeFile.readMultiByte(codeFile.length, "shift-jis"));
これでよし。
以降、必要なものを順次初期化するんだが、結構多い。
このやり方だとスターターキットのPV3DAppだのを使えないので、
自分で初期化しないといけない。
このデモを作ったコード(これ)なんかは、初期化が全部書いてあって
サンプルとしてはいいと思う。
内容的にはスターターキットのSimpleCubeをPlaneに
変えたくらいのものだから。
なお、FLARToolkitのりビジョン3236辺りから、FLARParamは
自動的に標準のカメラパラメータが入るようにmakcなる人が改造していた。
なので、読み込むのはマーカのファイルだけでいいかも。
ただ、当該スレッドには「new FLARParam(true)」とあるが、
多分「FLARParam()」で動く。



