bullet

swigbullet作成中・・・

swigを使ってbulletのpythonバインディングを作っていて、BasicDemoがある程度動くところまでできた。 1フレーム50msくらいかかっていて、C++だと1フレーム5msくらいなので10倍くらい遅い2msくらいなので25倍くらい遅かった。 OpenGLの描画をC++に埋めてもま…

premake4でirrlichtの詰め合わせ作成

bullet-2.79のプロジェクトファイル生成方法がpremake4になっていたので自分が使いやすいように編集していたら、irrlicht+bullet+glew+irrmmdの詰め合わせになった。とりあえあず、bitbucketに投入した。 https://bitbucket.org/ousttrue/onibi/overviewだい…

はまりポインツ

テンプレートクラスを継承したクラス(btAxisSweep3) http://www.swig.org/Doc2.0/SWIGPlus.html#SWIGPlus_nn30 演算子オーバーロード(btVector3, btTransform...) http://www.swig.org/Doc2.0/SWIGPlus.html#SWIGPlus_nn28 Javaの方で継承してc++に渡す(btMo…

bulletのjavaラッパでHelloWorld成功

まず、bullet本体のbtRigidBody::btRigidBodyConstructionInfoと、btTypedConstraint::btConstriantInfo1およびbtTypedConstraint::btConstraintInfo2を内部クラスから外に出す。で、bulletを再ビルド。この、作業自体は簡単。 bullet.i %module bullet %{ #…

jbulletにはbtGeneric6DofSpringConstraintが無い件について

jbulletはbullet-2.72ベースの移植であるため、bullet-2.75から追加されたbtGeneric6DofSpringConstraintが存在しない。ならば、btGeneric6DofSpringConstraintだけ追加で移植すればいいじゃないのと思って取りかかった。ところが、bullet-2.73でbtSequentia…

JBulletことはじめ

http://jbullet.advel.cz/ オリジナルのBulletのほぼ忠実な移植のようだ。 OpenGL等によるビジュアルを伴わない最小のサンプル http://bulletphysics.org/mediawiki-1.5.8/index.php/Hello_World のJBullet版を書いてみた(scala-2.9向け)。 import com.bulle…

重力加速度

妙にゆっくりと落下すると思ったらワールドの縮尺がMKS単位系じゃないのに重力に9.8を指定していたからだった。 PMDだと1マスが40cmくらいとのことで9.8の2.5倍くらいにしたらいい感じになった。

bullet組み込み成功

ついにツインテールが揺れるようになった。 重力がおかしい主要な原因は、剛体の初期位置指定で位置と回転を逆に指定するというミスのせいだった。どういうことかというと剛体のオイラー角と位置の読み込みデータを同じ型の構造体(三次元ベクトル)に格納して…

btMotionStateメモ

PMDの剛体情報とbulletのMotionStateの関連性がだいたい理解できたのでその辺りについてのメモ。フォーマットはこちらを参照 http://blog.goo.ne.jp/torisu_tetosuki/e/1e25fc196f2d7a7798f5cea87a942943また、ソースはARTK_MMDを参考にしています。 btMotio…

剛体変換

bulletのbtTransformが扱うのは剛体変換で内部に3x3の回転行列と3次元ベクトルを持つ。 bulletは縦ベクトルモデルのようなので区分行列で書くと となりRが回転行列でTが移動要素となる。 なので bulletのソースsrc/LinearMath/btTransform.h /**@brief Mult…

回転が合わない

Irrlichtとbulletで回転が合わない?というか何があっていないのか良く判っていないのだが、髪などの物理演算の影響下にあるボーンがすべてコンストレイントの限界まで上昇している。重力を逆にしても関係なかったのでもっと他のところではまっている。 Irrl…

剛体表示(修正)

Irrlichtに乗せるにあたってBulletを調べていたら前の剛体表示はミスってたことが判明。 PMDにある3種類の剛体のうちボーン追従タイプが出ていなかった。 Cスタイルのキャストには注意しないといかん。dynamic_castを使っていればすぐに気付いたのに。 btMo…

剛体表示

モーション再生の積み残しになっていたBulletの使い方について調べ中。 ARTK_MMD http://ppyy.hp.infoseek.co.jp/artk_mmd.html のソースを組み合わせてSDLのOpenGLで再生するところまでできた。 今からbullet部分の調査に入る。 pmdフォーマット http://blo…

ことはじめ

ビルドしてちゃんと実行できる環境を作るのに手間取ったのでメモ。 環境はWindowsXP+VC9(2008 express edition)。 まず、うまくいかなかった例から。 ソースは、最新のリリース版2.75をダウンロードした。 http://code.google.com/p/bullet/downloads/list …