日曜日, 7月 26, 2009

openframeworksでaddonを試す

FATで入ってるaddonはいいとして、他のaddonを使う時はどういう方法がいいのかなと思って試してみました。かなり愚直なやり方です。

ofxMSAPhysicsを使ってみる。
processingのtraer physics(いつの間にかソースが公開されている!)に似たAPI。

1.ダウンロード
svnがわかる人は
svn checkout http://ofxmsaof.googlecode.com/svn/trunk/ ofxmsaof-read-only

わからない人はミラーからダウンロードできます。
ofxPhysics以外にも色々入ってます。

2.プロジェクトを作る

apps/examples/emptyexamplesフォルダをコピーしてペースト。フォルダの名前をPhysicsTestとする。その中にaddonsというフォルダを作り、ダウンロードしたフォルダの中からofxMSAPhysicsとofxObjcPointerをコピーしてaddonsフォルダの中にペースト。srcフォルダ以外を消しておく。
ofxObjcPointerはメモリ管理に使っているらしい。

xcodeprojファイルを開いて、Finderからaddonsフォルダをドラッグして「Groups & Files」にドロップ。日本語環境だと「グループとファイル」。僕は調子こいて英語にしています。

ダイアログが出てくるので多分そのままOKすればいい。上の方にフォルダをコピーするかどうかチェックする項目があるけど、今回はプロジェクト内に既にコピーしてあるのでチェックは外しておく。ラジオボタンは「Recursively Create Groups for any added folders(追加したフォルダに再帰的にグループを作成する)」方で。src以外を消したのはここで変なことにならないため。

これで準備完了。

3.コードを書く
examplesの中身をコピーしてもいいですが、複雑なので使い方を覚える意味でも必要そうなところを抜き出して改変しました。マウスをクリックしたらボールが落ちてくるサンプルです。キーボードを押すと消えます。

ofxMSAPhysics physics;
でofxMSAPhysicsクラス型を宣言して、physics.makeParticle(x,y,z)でパーティクルの生成。
p->xとかが何なのかわからない場合はSBAW09の第11回目とかOF for Processing usersとかOoops!を参照。

ソースコードがうまく貼付けられなかったのでプロジェクトごとアップしました。
physicsTest.zip
---
*2.についてもう少しましなやり方を後日知った

0 件のコメント: