Papervision3DとFLARToolKitで、現実を拡張しようぜ!最新版!!

このエントリをはてなブックマークに追加このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加このエントリをkwoutに追加
2008年8月21日 木曜日1:02:29

さて、以前のエントリでPapervision3Dのアルファ版、GreatWhiteの変更の影響でFLARToolKitが動かなくなったと言う話を書いたが、結局さくーしゃさんがFLARToolKitを修正してくださった。よく見るとサンプルの方もさりげなくバージョンアップしていて、流石としか言いようが無いんだが、GreatWhiteが狭量な所為で、書き換えないといけない。
と言う事で、今回は変更方法を解説したいと思う。

最新版の入手と変更

まず、Papervision3DとFLARToolKitの最新版を入手し、FlashDevelopのプロジェクト上で、両方にパスを通して欲しい。
次にFLARToolKitのcom.libspark.flartoolkit.scene.FLARCamera3Dクラスを開くと、116行目以降に変更が必要な部分についての解説が掲載されている。

// 巣の GreatWhite のままだと _projection が Camera3D の private プロパティなのでエラる。
// ので protected とかにしてください。無理やり。害はない。つーかまーそれ以外に方法がない。
this._projection = new Matrix3D(m_projection);

ここを開き、_projectionら辺にカーソルを合わせて(こんな感じ→「_proje|ction」)、F4キーを押すと、Papervision3DのCamera3D.asが開き、ちょうど

private var _projection                 : Matrix3D;
private var _prevFocus                  : Number;
private var _prevZoom                   : Number;
private var _prevWidth                  : Number;
private var _prevHeight                 : Number;
private var _prevOrtho                  : Boolean;
private var _prevOrthoProjection        : Boolean;
private var _prevUseProjection          : Boolean;
private var _focusFix                   : Matrix3D;

_projection部分が選択されている事と思う。ここのprivateを、protectedに変更すれば終了。

protected var _projection               : Matrix3D;
private var _prevFocus                  : Number;
private var _prevZoom                   : Number;
private var _prevWidth                  : Number;
private var _prevHeight                 : Number;
private var _prevOrtho                  : Boolean;
private var _prevOrthoProjection        : Boolean;
private var _prevUseProjection          : Boolean;
private var _focusFix                   : Matrix3D;

これでOK。
もしくは、Papervsion3Dのorg.papervision3d.cameras.Camera3Dを直接編集してもよい。探すのが面倒だけど。
しかし、出来る事ならPapervision3Dの方に折れてもらって、この部分はprotectedで通して欲しいな。
誰か英語が出来てPapervision3D界隈に顔の利く方、ここがprotectedになるように働きかけてもらえませんかね?
違った投影方法にしたい人も居るんだよ?とか言って。

トラックバック URL :

コメントをどうぞ

HTML convert time: 0.660 sec.